Webに乗っているサンプルソースなどでPythonを学ぶときに、初心者が躓くポイントの一つとして、バージョンの違いで動かない場合。
超単純なHello Worldすら動かない。
今からやる人は大体Python3を使うと思いますが、世にあるコードはまだ2系のものが多いと思いますので、初心者が躓く最初のポイントになるかと思いますが、実は2から3に変換してくれるコマンドがあります。
2to3コマンド
以下のコマンドで差分を出してくれます。
$ 2to3 hogehoge.py
ざっと見て問題なさそうでしたら、下記のコマンドでファイルを書き換えてくれます。
$ 2to3 -w hogehoge.py
なおLinux系やMacの場合はこれでよいのですが、Windowsの場合はコマンドが見つからないと出てしまいます。
python “(インストール先)\Python35\Tools\scripts\2to3.py” -w hoge.py
で、インストール先が良くわからないという場合はDOSプロンプトで”path”コマンドでパスが通ったディレクトリが表示されるので、それっぽいところを探してください。
ただ、いちいちソースファイルを指定して起動するのが面倒この上ないのでbatファイルを作って起動するようにしました。
2to3.bat
@echo off python "C:\Program Files\Python35\Tools\scripts\2to3.py" %*
※フォルダ名は適当に書き換えてください。
これを適当なパスの通ったフォルダに入れておけば
$ 2to3.bat hogehoge.py
という感じで起動できます。