파이썬을 개발하다 보면 정말 많이 쓰는 게 주피터 노트북(Jupyter notebook)이다. 인터프리터 언어의 특징을 정말 잘 살린 도구로, 파이썬 셸을 사용해도 되지만 코드를 저장해놓고 동일한 내용을 실행한다던가, 조금씩 내용을 바꿔가면서 테스트 하기에 정말 좋아서 개발할 때는 없으면 굉장히 불편해졌다.
(optional) Jupyter notebook 환경변수 설정
셸에서 jupyter
명령어를 찾을 수 없는 경우, 셸의 rc
파일에 아래 내용을 추가한다. 예를 들어 zsh
이라면, nano ~/.zshrc
와 같이 편집기를 사용하면 된다.
export PATH="/home/master/.local/bin:$PATH"
변경 내용을 적용하기 위해 source ~/.zshrc
를 해주는 것도 잊지 말자.
테마 설치
주피터 노트북의 밋밋한 디자인을 조금 더 예쁘게 사용할 수 있는 jupyterthemes
를 사용하면 코드의 가독성도 더 좋아진다.
pip
을 이용해 설치가 가능하다.
pip3 install jupyterthemes
그 다음 셸에서 jt
명령어로 실행이 가능하다. 명령어에 대한 자세한 설명은 여기를 참고하자.
jt -t monokai -f droidmono -fs 14 -nf droidsans -nfs 14 -ofs 12 -cellw 90%
나 같은 경우는
- -t : monokai 테마
- -f : droidmono 폰트
- -fs : 폰트 사이즈 14
- -nf / nfs : 노트북 폰트 / 사이즈
- -ofs : 출력 폰트 사이즈
- -cellw : 셀 너비 90%
셀 너비같은 경우는 주피터 노트북의 기본 셀 너비가 화면 너비보다 좁아서 코드 줄바꿈이 너무 자주 되는 문제가 있어서 설정했다. 전체 화면의 90%까지 확장이 되는 것을 확인할 수 있다.
위와 같이 설정했을때의 결과!
확장기능(nbextensions) 설치
노트북을 사용하면서 불편했던 점은 작성하는 코드가 포맷팅이 되지 않는다는 것이다. 그런데 VSCode에서 사용하고 있는 파이썬 포맷터인 black
을 주피터 노트북에 설치할 수 있는 방법이 있다.
먼저 주피터 확장 기능을 설치해준다.
pip3 install jupyter_nbextensions_configurator jupyter_contrib_nbextensions
jupyter nbextensions_configurator enable --user
jupyter contrib nbextension install --user
그리고 설치하길 원하는 확장 기능을 다운받는다.
jupyter nbextension install https://github.com/drillan/jupyter-black/archive/master.zip — user
jupyter nbextension enable jupyter-black-master/jupyter-black
노트북을 재시작하면 확장 기능이 적용되고, Ctrl + B
버튼을 누르면 자동으로 포매팅이 되는 걸 볼 수 있다.
노트북에서 확장 기능이 보이지 않을 때
노트북 최신 버전에서 확장 기능 탭이 보이지 않는 경우가 있다. 이럴 경우 localhost
:8888/nbextensions
로 접속한다. 주소나 포트가 다른 경우는 localhost:8888
부분을 바꿔주면 된다.
화면 좌측 위의 disable configuration ~
부분의 체크박스를 해제하고, 사용하길 원하는 확장 기능이 체크되어 있는지 확인한다.