Pythonをインストールしようとして、ダウンロードページを開いたら、バージョンがずらっと並んでいた。3.10、3.11、3.12、3.13……。どれを選べばいいのか、迷う。
「最新が一番いいのでは?」と思う一方で、「最新は不安定」という話も聞く。結局どれが正解なのか、よくわからないまま適当に選んでしまう人は多い。
この記事では、Pythonのバージョン選びで失敗しないための考え方と、確認すべきページを具体的にまとめた。初心者でもすぐ判断できるようになる。
Pythonのバージョンには「bugfix」「security」「end-of-life」がある
Pythonのマイナーバージョン(3.11、3.12のような数字)には、それぞれ「今どういうサポート状態か」を示すフェーズがある。大きく分けて3つ。
まず「bugfix(バグフィックス)」フェーズ。これはバグの修正もセキュリティの修正も、どちらも提供される状態のこと。一番手厚い。新しい不具合が見つかっても、修正版がちゃんと出る。実務で使うなら、ここにいるバージョンが一番安心できる。
次が「security(セキュリティ)」フェーズ。こちらはセキュリティの修正だけが提供される。バグが見つかっても、直してもらえない。動作に支障が出ても、自分で対処するしかなくなる。
最後が「end-of-life(サポート終了)」。文字通り、すべてのサポートが終わった状態。セキュリティの穴が見つかっても、誰も塞いでくれない。使い続けるのは、鍵のかからない家に住むようなものになる。
どのバージョンが今どのフェーズにいるかは、Python Developer’s Guideの「Status of Python versions」というページに一覧で載っている。ここを見れば一発でわかる。
安定でトレンドにも対応できるマイナーバージョンの選び方
結論から言うと、bugfixフェーズにある中で最も新しいマイナーバージョンを選ぶのが基本。安定性があるし、比較的新しい機能も使える。トレンドのライブラリにも対応していることが多い。
ただし、リリースされたばかりのバージョンには注意が必要。たとえばPython 3.13が出たばかりのタイミングでは、よく使われるライブラリがまだ対応できていないことがある。「インストールしたのに動かない」というトラブルの原因は、だいたいこれ。
だから、バージョンを決める前にもう1ステップやったほうがいい。自分が使いたいライブラリやフレームワークの公式ドキュメントで、対応しているPythonバージョンを確認すること。これを飛ばすと、あとで面倒になる。
選ぶときに考えるポイントをまとめると、こうなる。
- bugfixフェーズの中で一番新しいマイナーバージョンを確認する
- 使いたいライブラリの公式サイトで、対応バージョンを見る
- 長期運用するプロジェクトなら、リリースから1年以上たったバージョンが安心
- 最新機能を試したいだけなら、最新のbugfixバージョンでOK
Status of Python versionsページの見方と確認リンク
- 確認先:Python Developer’s Guide(Status of Python versions)
- ページを開くと、バージョンごとに「Status」「First release」「End of life」の列がある
- 「Status」が「bugfix」になっているものが、今もっとも安定して使えるバージョン
- 「End of life」の日付を見れば、いつサポートが切れるかもわかる
ページの見方はシンプル。表の左にバージョン番号、右にステータスとスケジュールが並んでいる。上のほうが新しいバージョンで、下にいくほど古い。「bugfix」の行を探して、その中で一番上にあるものが「安定かつ新しい」バージョンになる。
ちなみに、自分のPCに今入っているバージョンを確認するのも簡単。ターミナル(WindowsならコマンドプロンプトやPowerShell)を開いて、次のコマンドを打つだけ。
python –version
これで「Python 3.x.x」と表示される。表示されたバージョンを、さっきのページと照らし合わせれば、今自分が使っているバージョンの状態がすぐにわかる。
やりがちな失敗パターン3つ
① 常に最新を追いかけてライブラリが動かなくなる
「新しいほうがいいはず」と思って、リリース直後のバージョンに飛びつくパターン。Python本体は動くけど、使いたいライブラリがまだ対応していない。結果、インストールでエラーが出たり、動作がおかしくなったりする。
ライブラリとの互換性は、Python本体とは別の話。本体だけ見て決めると失敗する。
② end-of-lifeのバージョンを使い続ける
「今まで動いていたから大丈夫」と、古いバージョンを使い続けるパターン。end-of-lifeになったバージョンは、セキュリティの修正がもう出ない。脆弱性(弱点)が見つかっても放置される。特に業務で使っているなら、早めに乗り換えたほうがいい。
③ 確認せずにアップデートして環境が壊れる
逆に「古いのはまずい」と焦って、何も確認せずにバージョンを上げるパターン。これも危ない。今動いているライブラリが新しいバージョンで動かなくなることがある。アップデートする前に、使っているライブラリの対応状況を確認するのが先。
まとめ
- 結論:bugfixフェーズにある最新のマイナーバージョンが、安定性とトレンド対応のバランスが一番いい
- 次にやること:Python Developer’s Guideの「Status of Python versions」でステータスを確認する
- 覚えておくこと:使うライブラリの対応バージョンも必ずチェックする。バージョン選びはPython本体だけで決まらない
Status of Python versionsでbugfixフェーズのマイナーバージョンを確認してから、ライブラリの互換性と照らし合わせるのが一番確実です。
