Python3を使う

Pythonはバージョン2系と3系があるが、当サイトではPython3を前提とする。Python2のサポートは2020年までなので、Python3で始めよう。


後方互換性なし

Python3は後方互換性がなく、Python2前提コードの一部はPython3ではエラーになったり動作が変わったりする。基礎文法の中でも特に遭遇しそうな変化は、

変数名が日本語OKに

なまえ = 'アリス' # Python2ではエラー
print(なまえ + 'さん、こんにちは') # アリスさん、こんにちは

print文がprint関数に取って代わった

# Python2(Python3だとエラー)
print "Hello, world!"

# Python3
print("Hello, world!")

割り算の結果(商)が整数値から小数値になった

# Python2
print(3/3) # 1
print(1/3) # 0

# Python3
print(3/3) # 1.0
print(1/3) # 0.3333333333333333
# 整数(小数点以下切り捨て)にするなら//を使う
print(1//3) # 0

標準入力はinput()に、数値の入力は文字列扱いに

標準入力は「raw_input()」が廃止でinput()関数になり、数値入力も文字列扱いになった

# Python2では数値以外を入力するとエラー
print(input())

# Python3ではエラー
print(raw_input())

その他

自作パッケージのディレクトリに__init__.pyが不要になった(Python3.3以降)