少なくとも私にとっては、非常に奇妙なことに遭遇しました。
if month not in (02, 04, 06, 11):
print "Good"
09
タプルに追加するたびに、次のようなエラーが発生SyntaxError: invalid token
しました。これはこの特定の番号のみです。
何か案が?
少なくとも私にとっては、非常に奇妙なことに遭遇しました。
if month not in (02, 04, 06, 11):
print "Good"
09
タプルに追加するたびに、次のようなエラーが発生SyntaxError: invalid token
しました。これはこの特定の番号のみです。
何か案が?
数値の先頭を使用すると、Pythonはそれを基数8(8進数)0
の数値として解釈します。先頭を削除します:0
>>> 10
10
>>> 010
8
>>> 9
9
>>> 09
File "<stdin>", line 1
09
^
SyntaxError: invalid token
Python3はこれを改善しました。先頭が付いているすべての0
数字は無効と見なされるようになりました。8進数を作成するには、代わりに常に0o
プレフィックスを使用する必要があります。
>>> 010
File "<stdin>", line 1
010
^
SyntaxError: invalid token
>>> 0o10
8
先頭に0
s がある数値は 8 進数と見なされるため、09
無効です... 0 を削除するだけです
8進数として解釈される可能性のある数字の前にゼロを取り除く必要があると思います...
これを試すことができます(09がエラーを提供する理由はすでに回答されています)
month='05'
if month not in ('02', '04', '06', '11','09'):
print "Good"