본문 바로가기

computer/python

어느 환경에서 파이썬을 시작해야 할까?

이 글을 읽으면, 파이썬을 설치하고 실행할때 어떤 조합으로 구축해야할지 도움받을 수 있다. 어떤 운영체제와 개발 프로그램(환경)을 사용하는 것이 장점이 있는지를 대략적으로 알 수 있다.

 

그림1. 파이썬 시작할 때 고민하는 것들

독자는 파이썬을 다운받고 설치하는 법은 이미 알고 있을 것이다.

 

대부분 파이썬을 사용하고자하는 사람들은 파이썬은

Windows나 Linux 운영체제(Operating System, OS)에서 사용한다.

 

각 운영체제의 대표적인 장점은 무엇일까?

 

Windows는 친숙함이다.

Windows의 GUI (Graphical User Interface)는 컴퓨터에 대한 깊은 지식없이 컴퓨터와 소프트웨어를 쉽게 활용할 수 있게 한다. 보통 인터넷이나 문서 작업등 일상적인 생활을 windows에서 처리하기 때문이다.

 

Linux의 장점은 프로그래머에게 직관적이라는 점이다.

Linux의 CLI (Command Line Interface)는 명령어 기반으로 파일관리나 파이프, 라디이렉션, 이미 개발된 응용프로그램 등 개발자가 익숙해지면 효율적것이 많다. 그리고 가성비가 좋다. Microsoft의 Windows는 라이센스 비용이 Linux에 비해 비싼 편이다. 여러 사용자가 하나의 시스템을 사용하기에도 좋다.

 

두 운영체제가 친숙함과 직관성이 서로 구별되는 장점이라면, 단점 역시 대비된다.

 

Windows는 가성비가 낮고 Linux는 친숙하지 않다.

 

Windows에서 연구나 프로토타이핑에 파이썬 활용을 시작하고

점차 실력과 기능을 고도화해 Linux환경에서도 익숙해지기를 추천한다. 

 

파이썬은 간단하게 주피터 노트북, IDE, 터미널을 활용하여 실행할 수 있다.

 

1. 주피터 노트북

주피터 노트북은 문서화하기에 편한 개발 툴이다. 서버-클라이언트 방식으로 웹브라우저로 실행하면서 인터넷 연결이 없어도 실행이 가능하다. 원격에서 접속할 수도 있다. ipython kernel을 실행해 일부분의 코드를 실행하고 수정하고, 텍스트나 마크다운 문법으로 해당 코드에 대한 설명을 덧붙이기 매우 편하다. 보고서 형식으로 저장하기도 쉽다.

 

2. IDE 사용 (python idle, pycharm, visual studio ...)

파이썬 개발을 편하게 해줄 수 있는 여러 기능을 덧붙인 통합 개발환경 (Integrated Development Environment, IDE)을 활용하기도 한다. 대표적으로 intellij 사의 파이참(pycharm)이 있다. 라이브러리 설치, 데이터베이스 연결, 서버 접속, git 연동, 터미널 활용, 파일 관리 등 소, 대규모의 프로그램을 개발하기 위한 프로그램이다. 

 

무료인 pycharm community 버전을 활용할 것을 추천한다.

 

3. 터미널 실행

리눅스 환경에서 주로 사용하게 되는 방법이다. 파일을 편집기 (nano, vi, vim 등)을 활용해 .py 파일이나 설정파일을 작성하고 command line에서 직접 실행한다. IDE를 활용하거나 주피터 노트북에서 손쉽게 활용할 수 있는 기능을 직접 입력해야한다는 점에서 난이도가 가장 높다.

 

목적에 따라 세가지 환경을 나누어 쓰기도 한다.

 

데이터 분석은 주피터 노트북을 주로 사용하고, 서버 프로그램 개발, 프레임워크 활용, 제품 패키징 등은 IDE를 사용한다. 대규모 서버 작업은 터미널을 주로 활용한다.

 

파이썬을 갓 시작하는 입장에서 좋은 조합은 windows 운영체제에서 주피터 노트북나 파이참을 활용하고 숙련도와 목적에 따라 리눅스와 터미널 실행의 숙련도를 높이는 것이다.

 

 

Reference

https://jupyter-notebook-beginner-guide.readthedocs.io/en/latest/what_is_jupyter.html

 

 

'computer > python' 카테고리의 다른 글

초 단위의 디지털 시계를 어떻게 구현할 것인가?  (0) 2022.10.07
데이터 타입, type  (0) 2022.08.24
함수, function  (0) 2022.08.05
print 함수  (0) 2022.08.03
파이썬 개론 시작을 앞두고  (0) 2022.07.25