ipynb
파일 형식은 Jupyter Notebook에서 사용하는 파일 확장자입니다.
이 확장자의 유래는 다음과 같습니다.
- iPython은 Interactive Python이라는 대화형 쉘(interactive shell) 기반의 프로그램 이름입니다. 대화형 쉘 프로그램에서 웹 기반 프로그램으로 확장되며 프로그램이 이름이 IPyhton Notebook 프로그램으로 바뀌게 됩니다.
- IPython Notebook (ipynb)에서 유래
- Jupyter Notebook의 전신은 IPython Notebook이었습니다.
ipynb
는 “IPython Notebook“의 약자로, 이 확장자는 IPython에서 처음 사용되었습니다.
- Jupyter 프로젝트로 발전
- 2014년, IPython 프로젝트에서 대화형 노트북 환경이 확장되면서 Jupyter 프로젝트가 독립적으로 분리되었습니다.
- Jupyter는 Python뿐만 아니라 다양한 언어를 지원하도록 설계되었습니다. (기존에 IPyhton Notebook은 이름만 봐도 지원 언어가 파이썬으로 한정되어 있어보이죠?)
- 그러나 기존의
ipynb
파일 확장자는 그대로 유지되었습니다. 확장자를 바꾸면 많은 혼란이 올 수 있으니까요.😊
정리
ipynb
는 IPython Notebook에서 유래된 확장자입니다.- Jupyter Notebook으로 발전하면서도
ipynb
확장자가 유지되었습니다. - 현재는 Python뿐만 아니라 R, Julia 등 여러 언어를 지원하는 대화형 노트북 환경에서 사용됩니다
IPython 추가 정보
Python의 주요 특징
- 참고로 iPython은 기존의 Python 인터프리터보다 더 강력한 기능을 제공하며, 특히 데이터 분석, 과학 컴퓨팅, 머신러닝 등의 분야에서 많이 사용됩니다.
- 대화형 쉘 제공
- 기존 Python 인터프리터보다 강력한 명령줄 환경을 제공
- 코드 자동 완성, 명령어 히스토리, 구문 강조 등의 기능 포함
- Jupyter Notebook의 기반
- 원래 IPython Notebook이라는 이름으로 시작되었으며, 이후 Jupyter 프로젝트로 분리됨
- 현재 Jupyter Notebook에서 Python 커널로 사용됨
- 매직 명령어 (Magic Commands)
%timeit
,%lsmagic
,%matplotlib inline
같은 특별한 명령어를 제공- 코드 실행 속도 측정, 디버깅, 파일 시스템 탐색 등 다양한 기능 가능
- 병렬 컴퓨팅 지원
- 다중 프로세스, 다중 스레드를 활용한 고성능 연산이 가능
- 쉘 명령어 실행 가능
!ls
,!pwd
,!echo hello
같은 쉘 명령어 실행 가능
IPython의 역사
- 2001년: 페르난도 페레즈(Fernando Pérez)가 IPython 프로젝트를 시작
- 2014년: Jupyter 프로젝트가 IPython에서 분리되면서, IPython은 Jupyter의 일부가 됨
- 현재는 Jupyter Notebook에서 Python 인터프리터로 사용됨
IPython과 Jupyter의 차이점
구분 | IPython | Jupyter |
---|---|---|
개념 | 대화형 Python 쉘 | 다중 언어 지원 대화형 노트북 환경 |
지원 언어 | Python 전용 | Python, R, Julia 등 여러 언어 지원 |
실행 환경 | 터미널 기반 | 웹 브라우저 기반 |
주요 기능 | 대화형 실행, 매직 명령어, 디버깅 | 노트북 문서(.ipynb), 셀 기반 실행 |
즉, IPython은 Python을 위한 인터랙티브 쉘이고, Jupyter는 다양한 언어를 지원하는 노트북 환경입니다. Jupyter Notebook에서 Python을 실행할 때, IPython이 백엔드 커널 역할을 수행합니다.