Python 2系終了のタイムリミット迫る。早く「3系」に切り替えよう気になるニュース&ネット記事

2019年も折り返しであと半年。Python 2系統のサポートが終了し、各種ライブラリもPython 2系向けが提供されなくなっていく。そろそろ「Python 3系統」に切り替えよう。

» 2019年06月27日 05時00分 公開
[一色政彦デジタルアドバンテージ]
「気になるニュース&ネット記事」のインデックス

連載目次

 Pythonは現在、下記の2系統が、公式サポートする最新版としてリリースされている(参考:「Pythonの各バージョンの状況」。執筆時点=2019年6月27日)。

  • Python 3(執筆時点の最新バージョンは「Python 3.7」)
  • Python 2(執筆時点の最新バージョンは「Python 2.7」)

 当然ながら、本「Deep Insider」ではより新しいPython 3を推奨しており、記事内容もPython 3が前提条件となっている。しかしながら、Python 2は広く使われていて、その人気はまだ根強い(過去にあった、ブラウザにおけるIE6問題に近いかもしれない)。例えば最近、筆者は2019年7月発売の、とある製品を予約注文しようとして、仕様を確認すると、サポートするPythonのバージョンが2.7となっており、がくぜんとしてしまった。……あと半年で終わるのに……と(詳細後述)。

Python 2系統のサポート状況

 Python 2系統の最新バージョンであると同時に最終バージョンである「2.7」は、下記のように10年間も使い続けられてきた。

  • 2010年7月、正式リリース
  • 2014年4月、サポート期間を5年延長(サポート期間終了はもともと2015年だった)
  • 2020年1月1日、サポート終了(つまり、約半年後にPython 2系統の終焉

 2014年にサポート期間が延長された理由は、主に下記の理由からだ。

  • Python 2系統と3系統には、互換性が低いという問題がある(一部の文法を廃止するなど、大胆に仕様を変更した)
  • Pythonの各種ライブラリは2系統で作成されているものが多く、そういったライブラリを使うためには2系統を使い続ける必要があった
  • 他には、Pythonの入門書が2系統を基準に書かれているケースが多かったというのも遠因だろう

 「いや、サポートが切れるだけでしょ。そんなにあおらなくても、これまでどおり2系統を使い続ければ問題ないじゃん」と考える人もいるだろう。しかし、そうは問屋が卸さない。というのも各種ライブラリも、「Python 2系統のサポート終了」を宣誓することが1つのムーブメントとなっているからだ。

各種ライブラリの「Python 2系統のサポート終了」宣誓

 2015年以降、多くのライブラリは2系統と3系統の両方をサポートしてきた。しかし、互換性の問題もあり、両方をサポートし続けることは効率性の面でコストがかかっている。それだけでなく、結果的にはPython言語の発展も阻害していると一部エンジニアから懸念されていた。

 その問題を解消するために、Python 3プロジェクトを持つもの同士が集まり、

  • 2020年1月1日までに、Python 2.7のサポートを打ち切る

という共同宣誓を、「Sunsetting Python 2 support」(python3statement.org)というサイト上で公に発表している(図1)。

図1 python3statement.orgでの共同宣誓 図1 python3statement.orgでの共同宣誓

 この中には、Pythonでデータを扱うために必須のNumPyやpandas、Matplotlib、Jupyter Notebookから、BokehやPillowなどまである。さらには、ディープラーニング/機械学習のライブラリであるTensorFlow、scikit-learnなどなど、そうそうたる有名ライブラリまでも名を連ねているのだ。図2のようにその数も多い。

図2 「Python 2系統のサポート終了」宣言の参加ライブラリ 図2 「Python 2系統のサポート終了」宣言の参加ライブラリ

 AI・機械学習を学んでいるDeep Insiderの読者にとっては、「もはやPython 3を使うしかない状況となっている」ことを、図2を見るとご理解いただけるだろう。

各種ライブラリのタイムライン

 python3statement.orgの[Projects Timeline]セクションでは(図3)、一部Pythonライブラリの各バージョンが持つタイムライン(=リリースから、サポート終了まで)がグラフ表示されており分かりやすい。気になる人はぜひサイトを訪れて参照してみてほしい。

図3 python3statement.orgの[Projects Timeline]セクション(AI・機械学習に関連する一部を抜粋) 図3 python3statement.orgの[Projects Timeline]セクション(AI・機械学習に関連する一部を抜粋)

 これを見ると、pandas、scikit-learnに至っては、既にPython 2系統のサポートは終了している状況である。

 [Projects Timeline]セクションには載っていないが、TensorFlowの場合は、2020年1月1日をもってPython 3のみをサポートし、Python 2はサポートしなくなる。2020年以降に、どうしてもPython 2を使う必要があれば、古いバージョンのTensorFlowを使わざるを得なくなる状況だ。


 以上の通り、Python 2の寿命はあと半年である。これからは意識して2系統ではなく「Python 3」を使っていくべきだろう。また、最新のライブラリを使う必要がある既存のPythonプロジェクトについても、Python 3への移行をそろそろ計画して始めなければならない時期である。本稿がそのきっかけとなればうれしい。

「気になるニュース&ネット記事」のインデックス

気になるニュース&ネット記事

鬯ッ�ゥ隰ウ�セ�ス�ス�ス�オ�ス�ス�ス�ス�ス�ス�ス�コ鬯ッ�ョ�ス�ヲ�ス�ス�ス�ョ鬮ッ�キ�ス�サ�ス�ス�ス�サ�ス�ス�ス�ス�ス�ス�ス�ソ�ス�ス�ス�ス�ス�ス�ス�ス鬯ッ�ッ�ス�ッ�ス�ス�ス�ィ�ス�ス�ス�ス�ス�ス�ス�セ�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�」鬯ッ�ッ�ス�ョ�ス�ス�ス�エ鬮」雋サ�ソ�ス�ス�ス�ス�・�ス�ス�ス�ス�ス�ス�ス�ウ�ス�ス�ス�ス�ス�ス�ス�ィ�ス�ス�ス�ス�ス�ス�ス�ス鬮ッ諛カ�ス�」�ス�ス�ス�、�ス�ス�ス�ス�ス�ス�ス�ク�ス�ス�ス�ス�ス�ス�ス�イ鬯ッ�ゥ陟�瑳�ス�ス�ス�ス�ソ�ス�ス�ス�ス�ス�ス邵コ�、�つ€�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�」鬯ッ�ッ�ス�ョ�ス�ス�ス�エ鬯ッ�ゥ陝カ螢ス譯カ�ス�ス�ス�ュ鬯ョ�ョ�ス�」�ス�ス�ス�ソ�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ィ鬯ョ�ッ陋ケ�コ�ス�サ郢ァ謇假スス�ス�ス�ソ�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�コ鬯ョ�」陋ケ�ス�ス�ス�ス�オ鬮ォ�エ隰ォ�セ�ス�ス�ス�エ�ス�ス�ス�ス髫カ髮」�ス�」�ス螳茨ス「謇假スス�ュ髮懶ス」�ス�ス�ス�「�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ゥ鬯ッ�ゥ陝キ�「�ス�ス�ス�「鬮ォ�エ髮懶ス」�ス�ス�ス�「�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�シ鬯ッ�ゥ陝キ�「�ス�ス�ス�「鬮ォ�エ闕ウ�サ�ス�ス髫カ謐コ�サ繧托スス�ソ�ス�ス驍オ�コ�ス�、�ス縺、ツ€鬯ッ�ッ�ス�ョ�ス�ス�ス�ヲ�ス�ス�ス�ス�ス�ス�ス�ェ鬯ゥ蛹�スス�カ髣費スィ�ス�ス�ス�ス�ス�ヲ�ス�ス�ス�エ�ス�ス邵コ�、�つ€鬮ッ�キ髣鯉スィ�ス�ス�ス�キ�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�サ鬯ッ�ッ�ス�ッ�ス�ス�ス�ェ�ス�ス�ス�ス�ス�ス�ス�ュ�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�イ鬯ッ�ゥ隰ウ�セ�ス�ス�ス�オ�ス�ス�ス�ス�ス�ス�ス�コ鬯ョ�ッ�ス�キ�ス�ス�ス�キ�ス�ス�ス�ス�ス�ス�ス�カ�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス�ス New

Copyright© Digital Advantage Corp. All Rights Reserved.

スポンサーからのお知らせPR

Deep Insider 鬯ッ�ョ�ス�ォ�ス�ス�ス�ェ鬮ッ蛹コ�サ繧托スス�ソ�ス�ス�ス�ス�ス�ス�ス�ス�ス�コ鬮」蛹�スス�オ髫エ竏オ�コ�キ�ス�ク�ス�キ�ス�ス�ス�ケ髫エ雜」�ス�「�ス�ス�ス�ス�ス�ス�ス�ウ鬯ゥ蟷「�ス�「�ス�ス�ス�ァ�ス�ス�ス�ス�ス�ス�ス�ュ鬯ゥ蟷「�ス�「髫エ雜」�ス�「�ス�ス�ス�ス�ス�ス�ス�ウ鬯ゥ蟷「�ス�「�ス�ス�ス�ァ�ス�ス�ス�ス�ス�ス�ス�ー

鬯ョ�ォ�ス�エ髯晢スキ�ス�「�ス�ス�ス�ス�ス�ス�ス�ャ鬯ョ�ォ�ス�エ鬯イ�ス�シ螟イ�ス�ス�ス�ス�ス�ス�ス�・鬯ョ�ォ�ス�エ髯晢スカ�ス�キ�ス�ス�ス�」�ス�ス�ス�ッ鬮」蜴�スス�ォ�ス�ス�ス�」

注目のテーマ

4AI by @IT - AIを作り、動かし、守り、生かす
Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。