如何在Python(odoo)中将09作为整数获取?

时间:2018-07-05 13:09:18

标签: python python-2.7 python-requests odoo odoo-10

我一直在尝试使用此代码在我的代码中将9月作为09,但是后来我知道在Python中09是不可接受的。但是它只能显示为字符串。我的问题是如何将09当作整数显示?

我的代码:

    september_month = dt.datetime(int(self.year.name),09,30)   
    print september_month

错误:     无效的令牌09和ValueError:日期超出月份范围

此python程序在odoo版本10 python2.7中运行

5 个答案:

答案 0 :(得分:1)

在Python 3中,不可能将int的值写为01,02,09等。

答案 1 :(得分:1)

这很好,您的问题是9月31日没有

I tried in the console

答案 2 :(得分:1)

在Python(任何版本)中,像09这样的文字都被解释为八进制文字。因此,9的值无效。

如果您真的想查看09,则可以编写一个字符串,然后使用int("09")转换为整数。在您的代码中:

september_month = dt.datetime(int(self.year.name),int("09"),int("30"))   
print september_month

不确定这是否真的有助于提高可读性。

答案 3 :(得分:1)

如果要显示前导0,请将数字格式设置为字符串:

"{:02d}".format(your_number)

答案 4 :(得分:0)

doc

Datetime知道9是什么,不需要输入09