파이썬(Python)이란?

- 특징, 문법 등 -


딥러닝 관련 소스들을 까 보면 자주 Python 언어를 접해볼 수 있습니다.

특히 요즘에는 Django 장고라고 해서 Python 기반의 웹 프레임워크로 웹 개발을 하는 경우도 많이 보이더라고요.

장고의 느낌은 Java 개발자 분들께는 스프링 프레임워크를 생각하시면 아! 그렇구나 하실 것 같습니다.

오늘은 Python이란 언어를 잠깐 공부해볼까 합니다.

맛보기형식으로 이렇다는 식으로 저도 공부해볼겸 겸사겸사 정리 해보았습니다.

 

> 특징

Python이란 언어는 인터프리터 언어로 한 줄씩 소스코드를 해석해서 바로 돌려 결과를 확인할 수 있는 언어입니다.

(친한 지인분 중에는 이를 보곤 근본 없는 언어라며 싫어하기도...)

 

> 진입장벽

언어는 쉬운 편에 속하고, 주변에서도 쉽고 편리하다는 말은 많이들 하지만..

Java, Swift, Kotlin, C# 등등.. python이란 언어 자체가 어려운 건 아닌데 인터프리터 방식을 거의 사용해본 적이 없다 보니 불편한 느낌은 조금 드네요 ㅠㅠ

특히 Kotlin이나 Swift처럼 세미콜론(;) 안 넣는 거 불편..

 

> 사용방법

Ubuntu와 같은 Linux 사용자는 운영체제를 설치하면 기본적으로 Python이 설치되어 있습니다.

제가 개인 서버로 사용 중인 Ubuntu 18.04 버전에도 Python 3.6.9 버전이 설치되어 있습니다.

Ubuntu에서는 명령어에 python3을 입력해보시면 바로 실행이 됨을 확인하실 수 있습니다.

만일 설치되어 있는 python3의 버전을 알고 싶다면 python3 -V를 명령어 창에 입력하시면 됩니다.

 

Windows의 경우 Python 홈페이지의 다운로드 페이지를 이용하면 금방 설치하실 수 있습니다.

(installer를 받으시면 금방 설치됩니다.)

 

최신 버전으로는 3.8.1 버전 (2020년 6월 12일 00시 기준)이며, 현재 3.9.0 베타 버전이 테스트 중에 있습니다.

 

예전에 어디서 들은 바로는 너무 최신 버전의 경우 호환되는 api가 조금씩 달라져 문제가 생길 수 있다고 하니 최신 버전보다는 적당한 옛날 버전(...)을 설치하시는 걸 추천합니다.

 

> 응용

Python은 앞에서 나온 것처럼 장고라는 프레임워크를 이용하시면 웹 프로그래밍이 가능하고, R언어 대용으로 데이터 분석이나 머신러닝, 딥러닝 등에 응용하기도 합니다.

 

> 문법

문법의 경우 기나긴 설명보다는 한번 보는 예제가 좋을 듯하여 예제 소스를 보여드리겠습니다.

 

 - 변수

Python에는 변수 타입이 존재하지 않습니다.

오로지 객체라고만 생각하시면 됩니다.

예를 들어 Java의 경우 int형의 변수 x에 1이라는 숫자를 담는 것 처럼하고 싶으시다면 타입의 명시 없이

x = 1과 같은 형식으로 변수에 숫자를 대입시킬 수 있습니다. (Kotlin과 비슷한)

 

Python의 경우 :(콜론)을 통해 코드가 이어짐을 알려주고, 이어지는 소스에 대해서는 앞에 >>>가 아닌 ...으로 변경됨을 확인하실 수 있습니다.

또한 지금까지 작성된 소스의 내용을 확인하고 싶으시다면 엔터를 한번 더 침으로써 결과를 확인할 수 있습니다.

(이는 리눅스 터미널창등에 실행하는 인터프리터 방식을 얘기하며, 개발할 소스가 가볍고 몇 문장이 안 되는 경우 터미널 등의 인터프리터 방식을, 그렇지 않다면 파이 참등의 IDE를 사용하시기를 권장합니다.)

 

 - if문

아래 예제는 변수 x에 1을 대입하고, x의 값이 1인 경우 "x는 1입니다."라는 문장을 보이게 하는 if문 예제 소스입니다.

>>> x = 1
>>> if x == 1 :
...  print("x는 1입니다.")

a는 1입니다.

 

 - for문

아래 예제는 변수 x에 문자열 "abc"를 대입하고, x의 값을 하나씩 프린트하는 for문 예제 소스입니다.

>>> for x in "abc" :
...  print(x)

a
b
c

 

 - while 문

아래 예제는 변수 i를 0부터 시작하여 4가 될 때까지 "test"라는 문자열을 print 하는 while문 예제 소스입니다.

>>> i = 0
>>> while i < 5 :
...  i=i+1
...  print("test")

test
test
test
test
test

 

 - 함수 선언

kotlin의 fun이나 javaScript의 function처럼 def를 사용하여 함수임을 선언해줍니다.

아래 예제는 a라는 매개변수를 통해 myPrint라는 수식어를 붙여 print 하는 함수 예제 소스입니다.

>>> def myPrint(a) :
...  print("myPrint_"+a)

>>> myPrint("Test!!!")
myPrint_Test!!!

 

기타 연산 방식은 우리가 아는 방식들과 크게 다르지 않는다는 거 기억하시면 금세 배우실 수 있습니다.

 

> Python 패키지 설치

파이썬 라이브러리를 설치할 때에는 pip를 사용합니다.

Ubuntu의 apt를 연상케 하는데, apt처럼(apt install <패키지명>) pip install <패키지명>을 이용하시면 됩니다.

리눅스의 apt처럼 pip 또한 패키지를 설치함에 있어 무궁무진하다는 느낌이 많이 듭니다.

특히 python 개발자가 많아지는 만큼 많은 패키지가 있어 골라먹는 재미도 느낄 수 있죠.

 

> IDE

 - PyCharm

 - Visual Studio Code

 - Visaul Studio 2019

등등..

 

확장자는 .py이며, vim과 같은 텍스트 편집기에서 편집 후 실행을 시켜도 됩니다.

 

저는 주로 Visaul Studio Code 및 터미널창(...)을 씁니다.

 

* 저작권에 위반될 수 있는 컨텐츠(이미지, 동영상 등)나 게시글은 삭제되거나 수정될 수 있습니다.

* 문제의 여지가 될 수 있는 컨텐츠의 경우 댓글 달아 주시면 빠른 시일 내에 조치하도록 하겠습니다.

 

Karzin

abbeea@naver.com

+ Recent posts