1. Jupyter Notebook
주피터 노트북(Jupyter Notebook)은 웹 브라우저에서 파이썬 코드를 작성하고 실행해 볼 수 있는 개발도구이다. 일반적으로 아나콘다(Anaconda)를 설치하면 Jupyter Notebook이 함께 설치되어 Jupyter를 사용할 수 있다. 물론 Anaconda를 사용하지 않는 경우 pip 을 통해 Jupyter 패키지를 설치할 수도 있지만, 통상 Anaconda를 설치해서 사용할 것을 권장한다.
Anaconda가 설치된 후, Anaconda 메뉴중 Jupyter Notebook을 선택하거나 Anaconda Navigator에서 Jupyter Notebook 메뉴를 선택하면 Jupyter를 실행할 수 있다.
Anaconda 메뉴중 Jupyter Notebook을 선택한 경우, Jupyter Notebook 서버 (콘솔 프로그램)와 클라이언트로 사용되는 웹 브라우저 등 2개의 프로그램이 실행된다. Notebook 서버 프로그램은 백그라운드에서 실행되는 파이썬 프로그램으로 웹 브라우저 클라이언트가 접속하는 서버 프로그램이며 실제 파이썬 코드 실행은 여기에서 일어난다. 그리고, 웹 브라우저는 파이썬 코드를 입력받고, 실행해 볼 수 있는 UI를 제공하는 클라이언트로서 코드를 Notebook 서버에 보내 결과를 다시 웹 브라우저에 뿌려 주게 된다.
Anaconda Navigator에서 Jupyter Notebook 메뉴를 선택한 경우에는 윈도우즈의 경우 Notebook 서버 콘솔 프로그램이 백그운드 프로세스로 실행되어 화면에 보이지 않으며, 클라이언트인 웹 브라우저만 화면에 나타난다. 하지만, 동작 방식은 기본적으로 동일하다.
Jupyter Notebook 서버 프로그램은 디폴트로 웹 포트 8888 을 오픈하여 사용하며, 따라서 Jupyter Notebook 웹 브라우저는 http://localhost:8888 을 통해 접속한다.
2. Jupyter Notebook 사용방법
Jupyter Notebook을 실행하면 처음 어느 폴더에 파일을 저장할 지를 묻는 화면이 나오는데,
먼저 여기서 원하는 폴더를 선택한다.
원하는 폴더로 이동했으면, 우측 상단에 있는 [New] 메뉴를 선택하고, [Python 3]를 선택한다.
이를 통해 새 Python 노트북이 생성되는데, 필요하면 상단의 Untitled를 클릭하고 노트북명을 변경할 수 있다.
(주: 위와 같이 새 노트북이 생성되면 Notebook 서버에서는 이 세션에 해당하는 Kernel이 하나 생성된다.)
이제 아래 화면과 같이 상단에는 메뉴와 툴바들이 표시되고,
중간에 파이썬 코드를 넣을 수 있는 코드 셀이 표시된다.
새로운 코드 셀을 추가하기 위해서는 + 툴바를 누르면 되고,
현재 선택된 코드 셀을 삭제하기 위해서는 가위표시 툴바를 누르면 된다.
첫번째 코드 셀에 파이썬 코드를 넣고, [Run] 버튼을 누르면 코드가 실행되면서 결과가 코드 셀 하단에 출력되면서
In [ ]:이 In [1]:로 바뀌게 된다. 이때의 1은 첫번째 실행된 코드라는 뜻이며, 계속 다른 코드 셀을 실행할 때마다
이 번호가 증가하게 된다.
Jupyter Notebook에서 새 노트북을 생성하면 이에 상응하는 새 Kernel이 Notebook 서버에서 생성된다. 웹 브라우저에서 코드를 실행하면 실제 이 Kernel에서 코드가 실행되고, Kernel은 실행 상태를 가지게 된다. 만약 지금까지 코드가 실행된 상태를 지우고 새롭게 다시 시작하기 위해서는 [Kernel] 메뉴의 [Restart]를 선택하면 된다. [Restart & Clear output] 메뉴를 선택하면 커널을 재시작함과 동시에 지금까지의 코드 셀 출력내용도 함께 삭제된다.