python2とpython3、raspberry piではどちらが正解?

pythonロゴ

はじめに

raspberry piでプログラムを書こうとするとpythonを使うのが一般的です。ですがpythonはpython2とpython3の二つのバージョンがあります。どちらを使うのが良いでしょうか?そのあたりを紹介していきたいと思います。

pythonとは

raspberry piにとってpythonは欠かすことの出来ない言語です。教育用として誕生したraspberry piですが、当初からpythonでのプログラムを出来るようになっていました。初学者はScratchでプログラムに関心を持ってもらい、本格的なプログラムはpythonでという意図があるのかと思います。 pythonは言語仕様が非常にきれいで、読みやすいという特徴があります。そしてIDLEという統合開発環境が始めからあり、初心者にも覚えやすい環境が整っています。同じように使いやすいプログラム言語としてrubyがありますが、raspberry piではpythonが標準言語として使われています。

python2とpython3

そんなpythonですが、悩ましい点もあります。pythonにはpython2とpython3の2つのメジャーバージョンがあり、どちらも使われています。問題はどちらを使えば良いのか?という点です。

番号から想像できる方もいると思いますが、python3はpython2の後継です。通常、古いバージョンは使われなくなるのですが、pythonの場合、互換性や言語仕様の問題で長い間、並行して使われています。

どちらを使うべきか

基本的にpython3を使うべきだと思います。以前はpython2でないと動かないライブラリも多かったのですが、主要なライブラリは3に対応してきています。特に次のケースはpython3のほうが望ましいと思います。

  • これからpythonを覚えようと考えている
  • 日本語(UTF-8)を使う
  • 機械学習を利用したシステムを考えている

逆にpython2のほうが良いと思う場合としては次のケースがあります。

  • センサーなどハードウェアのライブラリがpython2しか対応していない場合
  • pytyon2で既に書かれたプログラムを活用・修正する場合

課題解決へのポイント

残念ながら、書籍やネットの記事で紹介されているpythonのスクリプトはpython2とpython3と混在しています。最新の記事はほぼpython3で書かれていると思いますが、参考にする場合は注意が必要です。


シェア