为什么Python datetime.date与它允许的输入格式不一致?这是datetime.date中的错误吗?

时间:2012-08-21 18:30:57

标签: python

为什么使用日期(2012,08,01)&日期(2012,09,01)但失败了 日期(2012,01,01)到日期(2012,07,01)成功了吗?

我正在使用Python v.2.6.6

这是我控制台的复制粘贴

In [2]: from datetime import date

In [6]: date(2012,01,01)
Out[6]: datetime.date(2012, 1, 1)

In [7]: date(2012,02,01)
Out[7]: datetime.date(2012, 2, 1)

In [8]: date(2012,03,01)
Out[8]: datetime.date(2012, 3, 1)

In [9]: date(2012,04,01)
Out[9]: datetime.date(2012, 4, 1)

In [10]: date(2012,05,01)
Out[10]: datetime.date(2012, 5, 1)

In [11]: date(2012,06,01)
Out[11]: datetime.date(2012, 6, 1)

In [12]: date(2012,07,01)
Out[12]: datetime.date(2012, 7, 1)

当我尝试在8月/ 9月

做同样的事情时,所有到这里的工作都会有效
In [13]: date(2012,08,01)
  File "<ipython-input-13-765ad867a574>", line 1
    date(2012,08,01)
               ^
SyntaxError: invalid token


In [14]: date(2012,09,01)
  File "<ipython-input-14-f150aaea4c6c>", line 1
    date(2012,09,01)
               ^
SyntaxError: invalid token

有没有人知道这是一个错误,如果它已经在更新的python 3.0版本中得到解决?

1 个答案:

答案 0 :(得分:11)

前缀为0的数字表示Python中的八进制数(在Python 3之前)。 0809不是有效的八进制整数。