본문 바로가기

Python

파이썬 이란? What is Python?

symbol of Python

파이썬이란 인터프리터 언어 중 하나로써, 구글, 아마존, 드롭박스, 장고 등 많은 회사에서 유용하게 사용되고 있는 언어이다.

국내 기업에게도 인정받아 점점 사용자 층이 증가할 뿐더러, 파이썬을 이용한 프로그램의 수가 점점 늘어나고 있는 추세이다.

 

파이썬의 장점

  • 파이썬의 가장 큰 장점은 배우기 쉽다. 다른 언어들보다 덜 복잡하고, 문법이 훨씬 쉬워 빠르게 배울 수 있는 큰 장점을 가지고있다.
  • 파이썬은 무료이다. C언어와 궁합이 매우좋다. 프로그램의 전반적인 뼈대는 파이썬으로 만들고, 빠른 실행 속도를 요하는 부분에서는 C언어를 사용한다.(C언어가 어셈블리어와 가장 가깝기 때문이다.) 속도차이는 인터프리터 언어인지 아닌지의 차이이다. 런타임때, 폴더 전체가 실행이 되는지, 코드 한줄한줄 해석하며 실행하는지의 차이이다.
  • 파이썬은 간결하다. 필자는 앞전에 C언어도 같이 공부했지만, 파이썬과 비교를 해보면 훨씬 짧고 간결하다.

파이썬으로 할 수 있는 일

  • 시스템 유틸리티 제작 (유틸리티란 컴퓨터 이용에 도움이 되는 여러 소프트웨어들을 말한다.)
  • GUI 프로그래밍 (Tkinter라는 파이썬을 설치할때 같이 설치되는 모듈을 사용하면 GUI프로그래밍이 가능하다.)
  • C/C++와의 결합 (파이썬은 접착언어라고도 불리우는데, 앞에도 말했듯이 다른 언어들과 잘 어울린다.)
  • 웹 프로그래밍 (게시판이나 방명록등을 웹 프로그래밍이라고 하는데, 파이썬을 사용해 만든 웹 프로그램들을 무수히 많다.)
  • 수치 연산 프로그래밍 (Numeric Python이라는 수치 연산 모듈을 사용하면 파이썬에서도 수치 연산을 빠르게 진행할 수 있다.)
  • 데이터베이스 프로그래밍 (파이썬은 사이베이스, 인포믹스, 오라클, 마이에스큐엘, 포스트그레스큐엘 등의 데이터베이스에 접근해 줄 수 있는 도구들을 제공한다. 게다가 '피클'이라는 모듈을 사용하여 파일들을 저장하고 불러오는 일들을 맡아한다.)
  • 데이터 분석, 사물 인터넷 (Pandas라는 모듈을 사용하면 데이터 분석을 더 쉽고 효과적으로 할 수 있다. 아직까지는 'R'이라는 언어를 많이 사용하고 있지만, 파이썬의 이용 횟수가 점점 증가하고 있는 추세이다.)

파이썬으로 할 수 없는 일

  • 시스템과 밀접한 프로그래밍 영역(도스나 리눅스 같은 운영체제 및 엄청난 횟수의 반복과 연산을 필요로 하는 프로그램 또는 데이터 압축 알고리즘 개발 프로그램등을 만드는 것은 어렵다.)
  • 모바일 프로그래밍(구글에서 많이 사용되는 언어이지만, 파이썬으로 어플리케이션 개발은 불가 허나 ios는 swift라는 언어를 사용하는데, 스위프트의 언어의 문법은 python이다.)

Python is one of the computer programming languages. It is used in many companies. (ex) Google, Amazone, Dropbox, Jango, etc) In South Korea, they normally don't use it. However, the number of Python users is increasing currently.

Advantage of Python

  • The biggest advantage of Python is easy to learn. It has easier grammar than other programming languages and other programming languages are more complicated than Python.
  • Python is free, and it matches the C language well. Sometimes, programs' frameworks are made of Python. If it requires faster running speed, programmers use C language instead of Python (because C language is closer with assembler language. The speed gap between Python and C language is due to interpreter language. Because all the folders are running or each code is translated and run during the run time. It decides the speed of the program.
  • Python is concise. I learned the C language before I learn Python. As I compare these two, Python is more concise from my point of view.

What can I do with Python?

  • Creat System Utility software (A utility is a small program that provides an addition to the capabilities provided by the operating system.)
  • GUI Programming (We can do GUI Programming with the Tkinter module.)
  • Combination with C/C++ (Python is called 'glue language'. As I wrote, it matches with C/C++ languages well.)
  • Web Programming (General forum is made of Web programming. There is a huge number of web programs that are used by Python.)
  • Numerical arithmetic programming (As we use the Numeric Python module in the Python, we can do numerical arithmetic easily.)
  • Database Programming (Python provides Sybase, Informix, Oracle, MySQL, PostgreSQL. They can approach databases. Also Python has a module that is called 'Pickle'. It helps to open, read and write files by Python.)
  • Data Analysis, IOT-Internet Of Things (If we use the Pandas module from Python, we can analyze data easier and more effectively. Most users still use the 'R' language but the number of Python is increasing at the moment. )

What can I not do with Python?

  • Programming area that is connected closely with the system(Python has a difficulty to make OS like Linux or DOS and program that requires a lot of repeats and algorithms or data compression algorithm developing program. )
  • Mobile programming(Python is mostly used in Google, but you are not able to develop the android program with Python. But for IOS, which uses the Swift Programming language, the grammar of the Swift is Python.)