我正在尝试将日期和月份打印为 2 位数字。
timestamp = date.today()
difference = timestamp - datetime.timedelta(localkeydays)
localexpiry = '%s%s%s' % (difference.year, difference.month, difference.day)
print localexpiry
这给出的输出为 201387。无论如何,这都会将输出作为 20130807。这是因为我将其与类似格式的字符串进行比较。
请您参考如下方法:
使用 date.strftime() 的日期格式:
difference.strftime('%Y%m%d')
演示:
>>> from datetime import date
>>> difference = date.today()
>>> difference.strftime('%Y%m%d')
'20130807'
您可以对 date 对象的单独整数部分执行相同的操作,但是您需要使用正确的字符串格式化参数;要将整数格式化为带前导零的两位数,请使用 %02d,例如:
localexpiry = '%04d%02d%02d' % (difference.year, difference.month, difference.day)
但使用 date.strftime() 效率更高。
