
주피터 노트북 jupyter notebook 은 파이썬 코드와 텍스트, 그림, 웹 링크, 수식 등의 rich text element 가 한데 모여 있는 문서 document를 만들 수 있는 애플리케이션이다. 그 이름에서 드러나 있다시피, 실제 우리가 사용하는 공책 notebook처럼 사용할 수 있다.
예를 들어, 어떤 빅데이터 분석 결과를 다른 사람들과 공유한다고 생각해 보자. 단순히 분석 프로그램을 공유하는 것으로는 부족할 것이다. 데이터가 어떻게 구성되어 있고 어떻게 만들어 졌으며, 어떤 과정을 통해 분석되는 지를 살펴 볼 수 있고, 분석 결과 데이터를 그래프 등으로 보여줄 수 있다면 정보의 전달성을 보다 높일 수 있을 것이다. 이와 같이 어떤 분석과정과 관련된 모든 컨텐츠를 하나의 노트처럼 정리할 수 있도록 해 주는 것이 주피터 노트북이다.# ipython과 주피터 노트북의 기능은 동일하다고 보면 됩니다.
주피터 노트북의 경우 ipython의 기능을 모두 포함하면서도, 전체의 분석과정을 문서화할 수 있다는 장점이 있다. 그래서, 나름대로 실제 알고리즘을 개발하고 프로그램을 코딩하는 경우에는 ipython 이 유리해 보이기도 한다. 반면에, 빅데이터 분석과 같이, 원 데이터를 보면서, 데이터를 분석하는 과정을 개발하고, 그 결과로 그래픽 챠트 등을 만들고 시각화하며, 그 전체 과정을 텍스트를 첨부하면서 설명할 수 있는 말 그대로 뭔가를 노트(note)해야 하는 경우에는 주피터 노트북이 정답이다. 정말 공책에다 필기하는 것 처럼 과정을 설명하고, 그 과정을 기록할 수 있다. 나중에 다시 열어보고 수정할 수도 있고, 완성된 후에는 다른 사람들에게도 공유하는 것도 가능하다.
# 뭐... 개인적으로는 ipython 의 까만색 창을 좋아합니다만... ipython 실행화면을 캡쳐해서 올리다 보면 글이 너무 어두워지는(?) 관계로 실습은 주피터 노트북을 활용하여 진행하도록 하겠습니다.
1) 주피터 노트북의 설치
우선, 주피터 노트북을 우리의 가상환경에 설치해 보자. 다음 그림과 같이 명령 프롬프트에 pip install jupyter를 입력하고 엔터키를 누른다. 그러면, ipython 설치과정과 비슷한 과정들이 진행되면서 주피터 노트북이 설치된다. 설치과정에서 여러번의 프로그레스 바 progress bar (설치율을 보여주는 막대모양의 차트) 를 보게 되는데, 주피터 노트북 패키지를 구성하는 여러 가지 모듈들을 설치하는 과정이라고 생각하면 되겠다.

2) 주피터 노트북의 실행
에러 없이 설치되었다 싶으면, 명령 프롬프트에서 jupyter notebook이라고 입력한다. 그러면, 몇 줄의 텍스트가 화면에 보이면서, 아래와 같이 기본으로 설정되어 있는 웹브라우저에 주피터 노트북이 실행되는 것을 확인할 수 있다.

사용중인 운영체제의 버전에 따라 주피터 노트북이 바로 실행되지 않고, 아래와 같이 메모장이 뜨는 경우가 있다.

주피터 노트북이 화면에 뜨지 않고 메모장이 뜬 경우에는 다음과 같이 진행한다. 주피터 노트북이 문제 없이 실행된 경우에는 아래의 [주피터 사용법 기초] 부분으로 바로 가면 되겠다.
메모장에 뜬 html 파일을 컴퓨터에 저장한다 (메모장의 [다른 이름으로 저장] 메뉴를 선택하여 바탕화면에 저장하는 것을 추천한다) 저장한 후 그 파일을 인터넷 익스플로러로 열어 보면, 다음 그림과 같이 익스플로러 화면에 주피터 노트북이 뜨는 것을 확인할 수 있다. html 파일의 연결 프로그램이 익스플로러로 세팅되어 있는 경우에는 주피터가 바로 뜨고, 그렇지 않은 경우에는 마우스를 파일 아이콘 위에 올려 둔 후에 마우스 오른 버튼을 눌러 팝업메뉴를 띄운 다음 [연결 프로그램] 메뉴에서 익스플로러를 선택해 주면 된다.
또 다른 방법으로 주피터 노트북의 주소를 탐색기에 그대로 입력하는 방법이 있다. 메모장에 뜬 html 파일의 내용을 살펴보면 http://localhost:8888/tree?token=으로 시작하는 텍스트가 여러번 반복해서 나오는데 그 중에 아무거나 하나를 복사하여 탐색기의 주소창에 붙여넣기 하면 된다. 그러면, 위에서 봤던 화면이 그대로 뜨는 것을 확인할 수 있다.
3) 주피터 노트북 사용법 기초
주피터 노트북을 사용하는데 필요한 몇가지 기초 내용만 살펴보도록 하자. 다른 내용들은 파이썬을 공부하면서 저절로 익숙해 지는 내용들이니 굳이 열심히 익혀둘 필요는 없다. 원래 도구는 쥐는 법만 배우고, 사용하다 보면 저절로 익숙해 지는 법이다.
○ 새로운 노트북 만들기
먼저, 우리가 뭔가를 새롭게 기록하기 위해서는 새 공책 (notebook)이 필요하다. 주피터 노트북 화면 오른쪽 상단의 New▾ 버튼을 클릭해서 Python3을 선택한다.

그러면, 아래와 같은 주피터 노트북 화면을 만나게 된다. ipython에서 만났던 사용자 인터페이스와 유사하게 In[ ] 이 보인다. 여기서 In은 Input의 준말로서 사용자가 텍스트나 명령어를 입력할 수 있는 셀(cell)이다.

○ 주피터 노트북은 편집모드와 커맨드모드를 가진다
주피터 노트북은 에디트 모드 edit mode 또는 커맨드 모드 command mode로 동작한다. 편집모드는 녹색 green 의 셀 경계 cell border 를 가지고, 커맨드 모드는 청색 blue 으로 표시되는 차이가 있다.


편집모드에서는 우리가 텍스트 에디터를 사용하는 것처럼 셀 내부에 코드 또는 텍스트를 타이핑할 수 있다. 그래서, 실제 편집모드에서는 키보드 입력을 기다리는 프롬프트가 셀 내부에서 깜빡이는 것을 볼 수 있습니다. 엔터키 enter를 누르거나, 마우스로 셀 내부를 클릭하게 되면 편집모드가 된다.
○ 주피터 노트북 사용법 : 편집모드
주피터 노트북에서 새로 노트북을 만들면 다음과 같은 화면이 뜬다. 첫번째 셀을 보면 앞에 In[ ]: 라는 타이틀이 나타나 있는게 보이고, 셀 외부에 하나의 박스가 그려져 있는데, 현재 활성화된 셀이라는 뜻이다. 박스 왼편에 파란색 바가 보이는데 이는 현재 커맨드 모드임을 나타낸다.

셀에 명령어를 입력하기 위해서는 주피터 노트북이 편집모드에 있어야 한다. 편집모드가 되기 위해서는 Enter 키를 누르거나, 셀 내부를 마우스로 클릭하면 된다. 그러면 셀의 경계선이 녹색으로 바뀐다.

셀에 print('Hello~ World') 를 입력하고 Enter 키를 입력해 보자. 편집모드에서 엔터(Enter) 키를 누르면 동일한 셀에서 줄바꿈이 되는 것을 확인할 수 있다. 편집모드에서 입력된 명령어를 실제 실행하려면 Ctrl+Enter 키 또는 Shift+Enter 키 (Ctrl 키 또는 Shift 키를 누른 상태에서 Enter 키를 누르는 것) 를 눌러야 한다. 즉, 하나의 셀에 여러개의 명령어를 한꺼번에 입력할 수 있다.

두번째 줄에 print('Welcome to Python Programming') 이라는 명령어를 입력해 보자. 그러면 아래 그림과 같이, 2줄의 코드를 만들 수 있게 된다.

2줄의 명령어를 입력했으면 마지막에 Shift+Enter 키를 눌러보자. 그러면, 셀에 입력했던 명령어들이 실행되고 (그 결과로 셀 아래에 2줄의 문장이 출력됨) 다음 셀이 만들어진다. 셀의 명령어가 완성되어 실행되면 In[ ] 에 일련번호가 부여되는 것을 확인할 수 있다. 첫번째 셀의 타이틀이 In[ ] 에서 In[1]로 바뀌었음을 확인할 수 있다. 셀의 일련번호는 셀의 개수가 늘어남에 따라 1, 2, 3, 4,... 의 순으로 계속 증가한다.

* 주피터 노트북은 마크다운(Mark Down) 형식의 문서 편집을 지원합니다. 이 부분에 대해서는 나중에 따로 한번 정리하도록 하겠습니다.
'파이썬 (python)' 카테고리의 다른 글
[python 6] 데이터와 연산 (0) | 2020.02.19 |
---|---|
[python 5] 데이터와 변수 (0) | 2020.02.19 |
[python 4] 모든 프로그램은 변수와 함수로 구성된다 (0) | 2020.02.15 |
[python 2] 파이썬 가상환경 설치와 ipython (0) | 2020.02.14 |
[python 1] 파이썬의 설치와 개발환경 갖추기 (0) | 2020.02.14 |