拙ブログの過去記事のPythonプログラムを2でも3でも動くように修正してみました。(^_^;
主な修正内容は次の通りです。
print 〜 → print(〜) print → print("") print 〜, → print(〜,end=" ") (整数除算の商)i/j → i//j range(〜) → list(range(〜)) raw_input() → input()
「print 〜,」は、両方で動くように修正するのが難しかったので、使わないですむように作り直すか、「print(〜,end=" ")」をコメントとして併記しました。(^_^;
Python3では、「reduce」を使うとき、「from functools import reduce」が必要になったようです。
また、「print(u"全角文字")」の「u」は、付けたままでもPython3で動くようです。
それから、MandarinOrange.pyで、「exec("代入文")」を使うと、Python2ではうまくいくのに、Python3ではなぜか調子が悪いようです。(^_^;
P.S.
exec()の件ですが、代入文の後に「,globals()」をつけたらうまくいきました。文法的に少し厳しくなっているようです。(^_^;
※参考URL
●2to3を使ってコードをPython 3に移植する - Dive Into Python 3 日本語版
●Python 3ではまったこと - minus9d's diary
●Python 2.7.x と 3.x の決定的な違いを例とともに | プログラミング | POSTD