내 의견을 확장하겠습니다.
과학적 컴퓨팅에서 파이썬의 사용에 영향을 미치는 몇 가지 요소가 있다고 생각하지만 "그렇습니다. 파이썬이 루비 / 다른 어떤 것보다 파이썬을 사용하는 이유입니다." "
초기 역사
파이썬과 루비는 거의 같은 나이입니다. 위키 백과에 따르면, 파이썬은 공식적으로 1991 년에 처음 출시되었고 루비는 1995 년에 출시되었습니다.
그러나 구글이 이미 파이썬을 사용하고 밀레니엄 시대에 파이썬 개발자를 찾고 있었기 때문에 파이썬이 루비보다 일찍 눈에 띄게되었습니다. 우리가 프로그래밍 언어 사용의 역사와 그 언어를 사용하는 사람들에게 미치는 영향을 잘 정리 한 것은 아니기 때문에, 구글이 파이썬을 초기에 채택한 것은 Matlab, C ++, 포트란, 스타 타, 수학 등
즉, Google은 수천 대의 머신 (병렬화 및 스케일링 생각)이 있고 수백만 개의 데이터 포인트 (다시 스케일)를 지속적으로 처리하는 시스템에서 Python을 사용하고 있음을 의미합니다.
이벤트 합류
과학 컴퓨팅은 SGI 및 Crays와 같은 특수 기계에서 수행되었지만 (기억해야합니까?) 물론 FORTRAN은 상대적 단순성으로 인해 더 쉽게 최적화 될 수 있었기 때문에 널리 사용되었습니다.
지난 10여 년 동안 상용 하드웨어 (백만장자가되지 않아도 될 수있는 물건을 의미 함)는 과학적이고 방대한 컴퓨팅 영역에서 인수되었습니다. 상기 봐 현재 상위 500 순위 - 세계의 '슈퍼 컴퓨터의 순위 상단의 많은 정상 인텔 / AMD 하드웨어에 내장되어 있습니다.
구글이 파이썬을 홍보하고 구글이 상용 하드웨어를 사용하고 수천 대의 머신을 보유한 이후로 파이썬은 좋은시기에 들어 왔습니다.
또한 오래된 과학 컴퓨팅 기사를 파헤 치면 2000 년 무렵부터 시작되었습니다.
이전 지원
다음 은 2000 년에 작성된 천문학적 데이터 분석 소프트웨어 및 시스템 용으로 작성된 기사로 , 과학 컴퓨팅을위한 언어로 파이썬을 제안합니다.
이 기사에는 Python에 대한 다음 인용문이 있습니다.
Python은 과학 응용 프로그램에서 상당한 주목을 받기 시작한 해석 된 객체 지향 프로그래밍 언어입니다 (Python, 1999). 파이썬과 스크립팅 언어는 많은 과학 프로젝트의 다음 단계를 나타 내기 때문입니다 (Dubois 1994). 첫째, 파이썬은 과학 프로그램에 의해 이미 사용 된 간단한 명령 언어의 확장으로 볼 수있는 해석 된 프로그래밍 언어를 제공합니다
둘째, 파이썬은 다른 언어로 작성된 소프트웨어와 쉽게 통합됩니다. 결과적으로 기존 프로그램을 구동하기위한 제어 언어와 서로 다른 시스템을 결합하기위한 글루 언어로 사용될 수 있습니다. 마지막으로 Python은 서드 파티 및 온라인 참조 형식의 다양한 타사 모듈 모음, 확립 된 사용자 기반 및 다양한 문서를 제공합니다. 이런 이유로, 과학자들은 자신의 명령 해석기를 작성할 때 종종 과학자들이 달성하려고하는 것의 고도로 세련되고 확장 된 버전으로 볼 수 있습니다.
따라서 파이썬은 이미 기존 시스템과 기능적으로 유사하고 파이썬을 C 및 기존 프로그램과 같은 것들과 쉽게 통합하기 때문에 90 년대 후반으로 거슬러 올라간 견인력을 가지고 있음을 알 수 있습니다. 기사의 내용을 바탕으로 파이썬은 이미 1995-1996 시대로 거슬러 올라가 과학적으로 사용되었습니다.
인기 성장의 차이
루비의 인기는 2004 년에 처음 등장한 루비 온 레일즈와 함께 폭발적으로 증가했습니다. 루비에 대한 소문을 처음 들었을 때 저는 대학에 있었고 2005-2006 년 무렵이었습니다. 파이썬 용 django는 같은 시간대에 발표되었지만 (Wiki에 따르면 2005 년 7 월) 루비 커뮤니티의 초점은 웹 애플리케이션에서의 사용을 촉진하는 데 크게 집중된 것으로 보였다.
반면에 파이썬에는 과학적 컴퓨팅에 적합한 라이브러리가 이미 있습니다.
NumPy -NumPy는 2005 년에 공식적으로 시작되었지만, Numeric (1995)과 Numarray (2001?)라는 두 라이브러리가 이전에 릴리스되었습니다.
BioPython -Python 용 생물학적 컴퓨팅 라이브러리, 2001 년으로 거슬러 올라갑니다.
SAGE -2005 년 초에 최초 공개 릴리스가 포함 된 수학 패키지
그리고 더 많은 것은 (다운로드 사이트를 탐색하는 것 외에도) 많은 타임 라인을 모르지만 Python에는 SciPy (2006 년에 릴리스 된 NumPy를 기반으로 함)가 있으며 R (통계 언어)과 바인딩되었습니다. 2000 년대 초에 MatPlotLib을 얻었고 ipython에서 정말 강력한 쉘 환경을 얻었습니다.
ipython 은 2000 년대 초에 처음 출시되었으며 통합 된 matplotlib 그래프 및 계산 클러스터 관리 와 같은 과학 컴퓨팅에 매우 유용한 많은 기능이 추가되었습니다 .
위 기사에서 :
또한 많은 다른 파이썬 관련 과학 컴퓨팅 프로젝트에 주목할 가치가 있습니다. 숫자 파이썬 확장은 파이썬에 빠른 배열 및 행렬 조작을 추가하고 (Dubois 1996), MMTK는 분자 모델링을위한 Python 기반 툴킷 (Hinsen 1999)이며, Biopython 프로젝트는 생명 과학 연구를위한 Python 기반 도구를 개발하고 있습니다 (Biopython 1999). VTK (Visualization Toolkit)는 Python 바인딩이 포함 된 고급 시각화 패키지입니다 (VTK, 1999). 또한 Python 커뮤니티에서 진행중인 프로젝트는 이미지 처리 및 플로팅을위한 확장 기능을 개발하고 있습니다. 마지막으로 (Greenfield, 2000)에 제시된 작업은 STScI의 프로젝트에서 Python을 사용하는 것에 대해 설명합니다.
좋은 파이썬에 대한 과학 및 숫자 패키지의 목록 .
따라서 많은 것은 아마도 초기 역사와 2000 년대까지 루비의 상대적인 모호성 때문일 것입니다. 반면에 파이썬은 구글의 전도 덕분에 인기를 얻었습니다.
1995 ~ 2000 년 사이에 스크립팅 언어를 평가하고 있다면 실제로 무엇을보고 있었습니까? 사람들이 사용하고 싶지 않은 문법적으로는 Perl이 있었고, 더 명확한 구문과 더 나은 가독성을 가진 Python이있었습니다.
그리고 아마도 많은 자기 강화가있을 것입니다-파이썬에는 이미 과학 컴퓨팅을위한 위대하고 유용한 라이브러리가 모두 있으며 루비에는 과학에서의 사용을 옹호하는 소수의 목소리가 있으며 SciRuby 와 같은 일부 라이브러리가 생겨납니다 . Python의 도구는 지난 10 년 동안 발전했습니다.
루비의 커뮤니티는 대체로 루비를 웹 언어로 발전시키는 데 훨씬 더 관심이있는 것 같습니다. 왜냐하면 그것이 실제로 잘 알려 졌기 때문입니다. 반면에 파이썬은 다른 경로에서 시작하여 나중에 웹 언어로 널리 사용되었습니다.