ValueError:格式为零长度字段名称

时间:2013-08-10 05:33:35

标签: python datetime

我正在尝试使用以下代码将日期转换为漂亮的格式并运行以下错误..有人提供有关如何克服的输入吗?

from datetime import datetime
d = datetime.fromtimestamp(1372058963)
print d
create_date = datetime.strptime(str(d), '%Y-%m-%d %H:%M:%S')
print create_date
gerrit_created_date = "{}/{}/{}".format(create_date.month,create_date.day,create_date.year)
print gerrit_created_date

错误: -

  File "test.py", line 7, in <module>
    gerrit_created_date = "{}/{}/{}".format(create_date.month,create_date.day,create_date.year)
ValueError: zero length field name in format

2 个答案:

答案 0 :(得分:5)

也许你正在使用Python 2.6。指定字段编号。

gerrit_created_date = "{0}/{1}/{2}".format(create_date.month,create_date.day,create_date.year)

您可以使用strftime风格的格式。

gerrit_created_date = "{0:%m/%d/%Y}".format(create_date)

获取小时,分钟,秒:

gerrit_created_date = "{0:%m/%d/%Y %H:%M:%S}".format(create_date)

答案 1 :(得分:4)

更好地使用datetime.strftime

>>> d = datetime.fromtimestamp(1372058963)
>>> datetime.strftime(d, '%m/%d/%Y')
'06/24/2013'
>>> datetime.strftime(d, '%m/%d/%Y %H:%M:%S')
'06/24/2013 12:59:23'