🐍 Pythonの歴史
■ 1980年代後半:構想の始まり
-
開発者:オランダ人プログラマ Guido van Rossum(グイド・ヴァンロッサム)。
-
背景:教育用言語「ABC」を改良したいと考えていた。
-
目標:シンプルで可読性の高い、かつ汎用的なスクリプト言語の実現。
■ 1991年:Python 0.9.0 公開
-
場所:Usenetにてソースコードを初公開。
-
特徴:
-
クラス、例外、関数、コアデータ型(list, dict, str)などをすでに実装。
-
モジュール機構(最初期のimport文)を搭載。
-
■ 1994年:Python 1.0 リリース
-
主な追加:
-
lambda
,map
,filter
,reduce
などの関数型プログラミング機能。
-
-
用途:学術・教育、簡単なスクリプト処理に用いられる。
■ 2000年:Python 2.0 リリース
-
主な進化:
-
リスト内包表記の導入(例:
[x*x for x in range(10)]
) -
ガベージコレクタの改善(循環参照の検出)
-
Unicode対応の初導入。
-
-
問題点:後にPython 3と互換性がなくなる設計ミスが含まれていた。
■ 2008年:Python 3.0 リリース(通称「Python 3000」)
-
設計方針:互換性を断ち切ってでも「本当に正しい設計」を目指す。
-
主な変更点:
-
print
を文から関数に変更:print "hello"
→print("hello")
-
Unicodeが標準文字列になる。
-
range()
がイテレータに(xrange()
は廃止)。
-
-
移行の困難さ:多くの既存コードが2系に依存しており、移行に時間がかかった。
■ 2010年代:Pythonの普及とブーム
-
データサイエンスの台頭:
-
ライブラリ(NumPy, pandas, matplotlib, scikit-learnなど)が発展。
-
Pythonが科学計算やAI分野の標準的言語に。
-
-
Web開発:Django, Flask などの人気フレームワーク。
-
教育界・初学者に人気:文法のシンプルさが評価される。
■ 2020年:Python 2 のサポート終了(EOL)
-
長らく共存していた2系の公式サポートが終了(2020年1月1日)。
-
本格的に3系への統一が進む。
■ 現在(2025年時点)
-
最新バージョン:Python 3.12(2023年10月リリース)、2024年には3.13も登場予定。
-
新機能の例:
-
マッチング構文(
match-case
)でパターンマッチが可能に。 -
型ヒントと静的解析の強化。
-
パフォーマンス向上(「Faster CPython」プロジェクト)。
-
-
用途の広がり:
-
AI・機械学習(TensorFlow, PyTorch)
-
Webアプリ
-
自動化・スクリプティング
-
IoTやRaspberry Pi、教育用途
-
🎯 Pythonの特徴を形づくった理念
-
シンプルさ:「読みやすさは大切だ(Readability counts)」
-
明示性:「曖昧さは排除する(Explicit is better than implicit)」
-
一つの正しいやり方:「同じ目的に対して複数のやり方があるより、1つのやり方がある方が良い(There should be one—and preferably only one—obvious way to do it)」