pythonのバージョン選び

pyhtonのバージョン選び

本当なら、迷わずpython3を選ぶべきなんだろうけど、
置かれている仕事の状況では、python3がベストとならない事があった。
なので、未だにpython2を使うことがよくある。

python2を使う場面

javaで実装されたpythonことjythonを使う場合。

他システムのデータを取り出すときjavaのAPIを呼び出すため、jythonを利用している。
しかし、jythonはpythonのバージョンが2.7.0なので、python2としてコーディングする必要がある。

余談だが、jythonでのコーディングでpythonのバージョン以外で気になることろは

  • sqlite3モジュールがない。(sqlite.jarを使ってJDBC接続すればsqlite3に接続できる)
  • JavaのStringクラスとpythonの文字列の自動変換あたりで思わぬ動作をすることがある。(文字列の結合で失敗することがある。StringBuilderなどを用いて結合すれば問題ない)

サーバーのpythonのバージョンが2.6

利用しているredhatサーバのpythonのバージョンが2.6。サーバのモジュールのバージョン更新はなかなかできないので、2.6のまま利用している。

余談だが、python2.6でコーディングしていて気になるてん

  • ”.format()でフォーマットの中括弧の中の番号を省略できない。(‘{},{}’.format(a,b)が利用できない。ちゃんと'{0},{1}’.format(a,b)という風に、数字を指定する必要がある)

共有端末のmacのpythonがバージョン2.7

動作確認用macで動作するpythonのバージョンが2.7。動作確認用端末なので設定を変更することができない。

python2で問題があるか

python2でも、特に問題はない。
コンパイルエラーは標準ライブラリのパッケージ名が異なることくらい。
実行時エラーは、文字列関連でラフに処理しているところは、strとunicodeの違いでエラーになることがある。

サラッと書いた、このstrとunicodeの違いは、気にするのが面倒なところなので、ここを考えなくて良いだけでもpython3を使うメリットは十分にあると思う。

同じタグの記事
同じカテゴリの記事

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA