ipynb 파일의 유래

ipynb 파일 형식은 Jupyter Notebook에서 사용하는 파일 확장자입니다.

이 확장자의 유래는 다음과 같습니다.

  1. iPython은 Interactive Python이라는 대화형 쉘(interactive shell) 기반의 프로그램 이름입니다. 대화형 쉘 프로그램에서 웹 기반 프로그램으로 확장되며 프로그램이 이름이 IPyhton Notebook 프로그램으로 바뀌게 됩니다.
  2. IPython Notebook (ipynb)에서 유래
    • Jupyter Notebook의 전신은 IPython Notebook이었습니다.
    • ipynb는 “IPython Notebook“의 약자로, 이 확장자는 IPython에서 처음 사용되었습니다.
  3. Jupyter 프로젝트로 발전
    • 2014년, IPython 프로젝트에서 대화형 노트북 환경이 확장되면서 Jupyter 프로젝트가 독립적으로 분리되었습니다.
    • Jupyter는 Python뿐만 아니라 다양한 언어를 지원하도록 설계되었습니다. (기존에 IPyhton Notebook은 이름만 봐도 지원 언어가 파이썬으로 한정되어 있어보이죠?)
    • 그러나 기존의 ipynb 파일 확장자는 그대로 유지되었습니다. 확장자를 바꾸면 많은 혼란이 올 수 있으니까요.😊

정리

  • ipynbIPython Notebook에서 유래된 확장자입니다.
  • Jupyter Notebook으로 발전하면서도 ipynb 확장자가 유지되었습니다.
  • 현재는 Python뿐만 아니라 R, Julia 등 여러 언어를 지원하는 대화형 노트북 환경에서 사용됩니다

IPython 추가 정보

Python의 주요 특징

  • 참고로 iPython은 기존의 Python 인터프리터보다 더 강력한 기능을 제공하며, 특히 데이터 분석, 과학 컴퓨팅, 머신러닝 등의 분야에서 많이 사용됩니다.
  1. 대화형 쉘 제공
    • 기존 Python 인터프리터보다 강력한 명령줄 환경을 제공
    • 코드 자동 완성, 명령어 히스토리, 구문 강조 등의 기능 포함
  2. Jupyter Notebook의 기반
    • 원래 IPython Notebook이라는 이름으로 시작되었으며, 이후 Jupyter 프로젝트로 분리됨
    • 현재 Jupyter Notebook에서 Python 커널로 사용됨
  3. 매직 명령어 (Magic Commands)
    • %timeit, %lsmagic, %matplotlib inline 같은 특별한 명령어를 제공
    • 코드 실행 속도 측정, 디버깅, 파일 시스템 탐색 등 다양한 기능 가능
  4. 병렬 컴퓨팅 지원
    • 다중 프로세스, 다중 스레드를 활용한 고성능 연산이 가능
  5. 쉘 명령어 실행 가능
    • !ls, !pwd, !echo hello 같은 쉘 명령어 실행 가능

IPython의 역사

  • 2001년: 페르난도 페레즈(Fernando Pérez)가 IPython 프로젝트를 시작
  • 2014년: Jupyter 프로젝트가 IPython에서 분리되면서, IPython은 Jupyter의 일부가 됨
  • 현재는 Jupyter Notebook에서 Python 인터프리터로 사용됨

IPython과 Jupyter의 차이점

구분IPythonJupyter
개념대화형 Python 쉘다중 언어 지원 대화형 노트북 환경
지원 언어Python 전용Python, R, Julia 등 여러 언어 지원
실행 환경터미널 기반웹 브라우저 기반
주요 기능대화형 실행, 매직 명령어, 디버깅노트북 문서(.ipynb), 셀 기반 실행

즉, IPython은 Python을 위한 인터랙티브 쉘이고, Jupyter는 다양한 언어를 지원하는 노트북 환경입니다. Jupyter Notebook에서 Python을 실행할 때, IPython이 백엔드 커널 역할을 수행합니다.

Leave a Comment