Python3が出たのはずっと前ですが、未だに古いバージョンであるPython2が利用されていることも少なくありません。Pythonはバージョンの違いによってコードの書き方が変わってきます。
これはPython入門者にとっては、悩ましい問題ですよね。
そこで今回は、Python2とPython3の違いについて徹底的に解説します。
ぜひPythonを学習する際の参考にしてみてください。
なぜPython2と3で迷うのか?
Python2を扱う場合がまだ少なくない
この章を要約すると、
- Python2のみ使用できるライブラリがある
- Python2で作成されたプログラムをPython3への移行するのが面倒
- Python2と3は一部互換性がない
となります。
Python3は新しいバージョンですが、実は「2008年にリリース」されているものです。
もうすでに10年近くの年月が経っているのに、なぜ古いPython2と新しいPython3の違いがいまだに話題になるのでしょうか?
それは、まだPython2でしか利用できないライブラリが少なくないことです。Python自体は非常に機能が少ないシンプルなプログラミング言語なので、機能追加をするためのライブラリが数多く存在します。
ライブラリは個人や小さな企業が作ったものも少なくなく、すでに開発を終了していたり、メンテナンスが遅れていることが多いです。そのためPython3では利用ができなかったり、自分でPython3用にコードを書き換える必要があったりするのです。
Pythonには専門的なライブラリも多いので、「どうしてもこのライブラリを使わないと開発が難しい」という状況もあります。
また、Python2と3は一部で互換性がないため、すでにPython2で開発されたアプリケーションをPython3に移行することは大変な作業になります。
※Python2とPython3のどちらでも使えるライブラリを開発するツール(six)というものもあるので、どちらにも対応するライブラリを作ることは可能です。
ですので、Python2で作られたアプリケーションに機能追加やメンテナンスを行う場合では、そのままPython2が使われることが多いのです。
Python2とPython3ならどっちを学習するべき?
迷わずPython3を選択しよう
これから新しく学習する場合は、迷わずPython3を学習しましょう。
メジャーなライブラリはすでにPython3に完全対応しています。現在は、新しいアプリケーションはPython3で作成されることの方が多いです。
ライブラリもPython3に対応したものを選択すればいいので、支障がでることはあまりないでしょう。
Python2が必要になった場合だけ、Python3との違いを覚えるぐらいで問題ありません。
Python3の最新版を使おう
Python3にもPython3でも「3.0」「3.3」「3.5」「3.6」など細かなバージョンの違いあります。
Pythonは頻繁に仕様が変わってきた経歴があるため注意が必要なこともあります。
バージョン「3.0」「3.1」「3.3以上」ではそれぞれコードの書き方も変わってきます。
ですが、現在は最新版3.7(2018/11現在)を使うようにすれば問題ないでしょう。
なぜPython3を学習するべきなのか?
実は、新しいPython3の方が複雑な部分が取り除かれており、より初心者が学習しやすくなっています。
また、古いPython2の最新バージョンである「2.7」は、公式で2020年までサポートされるため、まだ全然使えると思う方も多いです。
しかし、今後は間違いなくPython3に移行されるので、あまり期待しない方がいいでしょう。
まとめ
入門者の方は、迷わず新しいPython3を選びましょう。
実践ではPython3が利用されることの方が多いので、古いバージョン2は必要がでてきたら学習する程度で問題ありません。
ここまで読んだけど、それでも悩む人もいるでしょう。
そんな人は、『無料カウンセリング』に気軽に足を運んで下さい。
あなたの悩みを解決することができます。
>> 無料カウンセリングで悩みを解決する オンライン可能