아이피톤
IPython원저작자 | 페르난도 페레스[1] |
---|---|
개발자 | 브라이언 E. 그레인저, Min Ragan-Kelley, Paul Ivanov, Thomas Kluyver, Matthias Bussonnier |
초기 릴리즈 | [1] | 전(
안정된 릴리스 | 8.3.0[2] / 2022년 4월 ; 전 ( ) |
저장소 | |
기입처 | Python, JavaScript, CSS, HTML |
운영 체제 | 크로스 플랫폼 |
유형 | 껍데기 |
면허증. | BSD |
웹 사이트 | ipython |
IPython(Interactive Python)은 Python 프로그래밍 언어용으로 개발된 인터랙티브 컴퓨팅용 명령 셸로, Introspection, 리치 미디어, 셸 구문, 탭 완료 및 히스토리를 제공합니다.IPython은 다음과 같은 기능을 제공합니다.
- 인터랙티브 셸(단말기 및 QT 기반)
- 코드, 텍스트, 수식, 인라인 플롯 및 기타 미디어를 지원하는 브라우저 기반 노트북 인터페이스입니다.
- 대화형 데이터 시각화 및 GUI 툴킷 사용 지원
- 자신의 프로젝트에 로딩할 수 있는 유연하고 임베디드 가능한 인터프리터.
- 병렬 컴퓨팅용 도구.
IPython은 NumFOCUS가 재정적으로 후원하는 [3]프로젝트입니다.
병렬 컴퓨팅
IPython은 병렬 및 분산 컴퓨팅을 제공하는 아키텍처를 기반으로 합니다.IPython에서는 병렬 어플리케이션을 인터랙티브하게 개발, 실행, 디버깅 및 감시할 수 있습니다.따라서 IPython에서는 [4]I(Interactive)가 사용됩니다.이 아키텍처는 병렬 처리를 추상화하므로 IPython은 다음과 같은 다양한 스타일의[5] 병렬 처리를 지원할 수 있습니다.
- 단일 프로그램, 다중 데이터(SPMD) 병렬 처리
- 다중 프로그램, 다중 데이터(MPMD) 병렬 처리
- MPI를 사용한 메시지 전달
- 태스크 병렬 처리
- data 병렬화
- 이러한 어프로치의 조합
- 커스텀 사용자 정의 접근법
IPython 4.0의 릴리스에서는 병렬 컴퓨팅 기능은 옵션으로 ipyparallel python 패키지로 출시되었습니다.ipyparallel의 대부분의 기능은 Dask와 같은 보다 성숙한 라이브러리로 커버되고 있습니다.
IPython은 NumPy 및 SciPy와 같은 SciPy[6] 스택 라이브러리에서 자주 가져오며, 많은 Scientific Python [6]배포판 중 하나와 함께 설치됩니다.IPython은 SciPy 스택의 일부 라이브러리(특히 matplotlib)와의 통합을 제공하여 Jupyter 노트북과 함께 사용할 때 인라인 그래프를 생성합니다.Python 라이브러리는 IPython 전용 후크를 구현하여 리치 객체 표시를 사용자 정의할 수 있습니다.예를 들어 SymPy는 IPython 컨텍스트 내에서 사용할 경우 LaTeX로 렌더링된 수식 렌더링을 구현하고 Panda 데이터 프레임은 HTML [7]표현을 사용합니다.
기타 기능
IPython은 Tkinter, PyGTK, PyQt/PySide 및 wxPython과의 논블로킹 상호작용을 허용합니다(표준 Python 쉘에서는 Tkinter와의 상호작용만 허용).IPython은 비동기 상태 콜백 및/또는 MPI를 사용하여 병렬 컴퓨팅 클러스터를 대화식으로 관리할 수 있습니다.IPython은 시스템 [8]셸 교체로도 사용할 수 있습니다.기본 동작은 Unix 쉘과 거의 비슷하지만 실제 Python 환경에서 코드를 실행할 수 있는 유연성과 커스터마이즈가 가능합니다.
Python 2 지원 종료
IPython 5.x(Long Time Support) 시리즈는 파이썬 2를 지원하는 IPython의 마지막 버전입니다.IPython 프로젝트는 Python 3 Statement에 참여하는 첫 번째 프로젝트 중 하나이므로 2020년 이후에는[9] Python 2를 지원하지 않겠다고 약속했으며 6.x 시리즈는 Python 3 이상과만 호환됩니다.그러나 다른 Python 버전에서 IPython 커널과 Jupyter Notebook 서버를 실행하여 사용자가 새로운 버전의 Jupyter에서 Python 2에 액세스할 수 있도록 하는 것은 여전히 가능합니다.
프로젝트 주피터
2014년 Fernando Pérez는 IPython의 분사 프로젝트인 Project [10]Jupyter를 발표했습니다.IPython은 Python 쉘과 커널로 계속 존재했지만, 노트북 인터페이스와 IPython의 다른 언어에 구애받지 않는 부분은 Jupyter라는 [11][12]이름으로 이동되었다.Jupyter는 언어에 구애받지 않으며 Jupyter가 지원하는 핵심 프로그래밍 언어인 Julia, Python 및 [13]R을 지칭합니다.
Jupyter Notebook(구 IPython Notebook)은 Jupyter 노트북을 생성, 실행 및 시각화하기 위한 웹 기반 인터랙티브 컴퓨팅 환경입니다.이는 [14]1980년대 Mathematica에서 시작된 컴퓨터 인터페이스 스타일인 Maple, Mathematica, SageMath와 같은 다른 프로그램의 노트북 인터페이스와 유사합니다.수십 개 언어로 실행 환경(일명 커널)을 지원합니다.기본적으로는 Jupyter Notebook에는 IPython 커널이 포함되어 있지만 2018년 5월 현재 100개 이상의 Jupyter 커널이 있습니다.
미디어에서
IPython은 인기 있는 컴퓨터 매체 및 기타 대중 [15][14]매체에서 언급되어 왔으며 과학 컨퍼런스에 [16]등장하고 있습니다.과학 및 엔지니어링 작업을 위해 종종 matplotlib의 [17]보조 도구로 제시됩니다.
조성금 및 상
2013년 1월 1일부터 Alfred P. Sloan Foundation은 IPython 개발을 2년간 [18]지원할 것이라고 발표했습니다.
2013년 3월 23일, Fernando Perez는 IPython으로 Free Software Foundation Advanced of Free Software 상을 수상했습니다.
2013년 8월 마이크로소프트는 IPython의 지속적인 개발을 [19]후원하기 위해 10만 달러를 기부했습니다.
2014년 1월에는 Dobb's 박사의 코딩 툴 부문에서 Jolt Productivity[20] Award를 수상했습니다.2015년 7월, 이 프로젝트는 Gordon and Betty Moore Foundation, Alfred P로부터 600만 달러의 기금을 받았습니다.슬론 재단, 레오나 M, 해리 B.헴슬리 자선 [21]신탁입니다
2018년 5월에는 2017 ACM Software System [22]Award를 수상했습니다.그것은 상을 [23]받은 팀 중 가장 큰 팀이다.
「 」를 참조해 주세요.
레퍼런스
- ^ a b "The IPython notebook: a historical retrospective". Fernando Perez Blog. 8 January 2012.
- ^ https://pypi.org/project/ipython/8.3.0/; 검색: 2022년 5월 22일.
- ^ "NumFOCUS Sponsored Projects". NumFOCUS. Retrieved 25 October 2021.
- ^ Helen, Shen (2014). "Interactive notebooks: Sharing the code". Nature. 515 (7525): 151–152. Bibcode:2014Natur.515..151S. doi:10.1038/515151a. PMID 25373681.
- ^ "Using IPython for Parallel computing - IPython docs".
- ^ a b "SciPy Stack".
- ^ "Printing — SymPy 1.1 documentation". docs.sympy.org. Retrieved 11 April 2018.
- ^ McKinney, Wes (2012). "Chapter 3". Python for Data Analysis. ISBN 978-1-449-31979-3.
- ^ "Release of IPython 5.0 – Jupyter Blog". Jupyter Blog. 8 July 2016. Retrieved 11 April 2018.
- ^ "Project Jupyter // Speaker Deck".
- ^ "The Notebook, Qt console and a number of other pieces are now parts of Jupyter". 17 October 2021.
- ^ "The Big Split™". 28 August 2017.
- ^ "Jupyter Logo · jupyter/Design Wiki".
- ^ a b Somers, James. "The Scientific Paper Is Obsolete". The Atlantic. Retrieved 10 April 2018.
- ^ Koziol, Conrad (12 September 2005). "Introducing IPython". NewsForge.
- ^ "IPython Presentations".
- ^ Pérez, Fernando; Granger, Brian E. (2007). "IPython: A System for Interactive Scientific Computing" (PDF). Computing in Science & Engineering. 9 (3): 21–29. Bibcode:2007CSE.....9c..21P. doi:10.1109/MCSE.2007.53. S2CID 16637923. Archived from the original (PDF) on 2 June 2010. Retrieved 30 July 2015.
- ^ "Announcement in scipy mailing list".
- ^ "IPython Announcement".
- ^ "Jolt Productivity Award write-up in Dr. Dobb's".
- ^ "$6M for UC Berkeley and Cal Poly to expand and enhance open-source software for scientific computing and data science". Retrieved 13 August 2015.
- ^ "Recent Software System Award News".
- ^ "Jupyter receives the ACM Software System Award".