为什么python显示datetime的无效标记(2018,01,01,10,08,00)?

为什么python显示datetime的无效标记(2018,01,01,10,08,00)?,python,python-2.7,syntax-error,Python,Python 2.7,Syntax Error,上面的代码产生一个错误 from datetime import datetime datetime(2018,01,01,10,08,00) 如果我将08更改为01和07之间的任何值,则不会显示错误,如果我将08更改为8,则错误也将取消显示 它背后的原因是什么?因为以0开头的整数文字被解释为八进制数,而数字8不允许出现在八进制数中 去掉前导零。它们比您预期的更有意义。是时候升级到Python 3了-这种形式的八进制文字在当前版本的语言中已经消失了。(您必须编写0o10,而不是010)。 &g

上面的代码产生一个错误

from datetime import datetime
datetime(2018,01,01,10,08,00)
如果我将
08
更改为01和07之间的任何值,则不会显示错误,如果我将
08
更改为
8
,则错误也将取消显示


它背后的原因是什么?

因为以
0
开头的整数文字被解释为八进制数,而数字
8
不允许出现在八进制数中


去掉前导零。它们比您预期的更有意义。

是时候升级到Python 3了-这种形式的八进制文字在当前版本的语言中已经消失了。(您必须编写
0o10
,而不是
010
)。
>>> datetime(2018,01,01,10,08,0)
SyntaxError: invalid token