将日期 8-DEC-17 转换为 08/12/2017 在 python 中给出 07/12/2017
Conversion of date 8-DEC-17 to 08/12/2017 is giving 07/12/2017 in python
我正在尝试格式化 python 中的日期时间,这就是我正在尝试的:
import time
datestr = "8-DEC-17"
v=time.strptime(datestr,"%d-%b-%y")
l = time.mktime(v)
print(time.strftime("%d/%m/%y ", time.gmtime(l)))
这段代码的输出是:
07/12/17这不是我想要的
我期待:08/12/17
您可以使用 datetime
,它会更短一些并给出您想要的结果:
from datetime import datetime
datetime.strptime(datestr, "%d-%b-%y").strftime("%d/%m/%y")
from dateutil.parser import parse
datestr = "8-DEC-17"
dt = parse(datestr)
print(dt.strftime("%d/%m/%y"))
根据https://docs.python.org/3/library/time.html#time.mktime,mktime()
是localtime()
的反函数。因此,您需要使用 localtime()
而不是 gmtime()
来打印结果:
print(time.strftime("%d/%m/%y ", time.localtime(l)))
输出08/12/17
我正在尝试格式化 python 中的日期时间,这就是我正在尝试的:
import time
datestr = "8-DEC-17"
v=time.strptime(datestr,"%d-%b-%y")
l = time.mktime(v)
print(time.strftime("%d/%m/%y ", time.gmtime(l)))
这段代码的输出是: 07/12/17这不是我想要的
我期待:08/12/17
您可以使用 datetime
,它会更短一些并给出您想要的结果:
from datetime import datetime
datetime.strptime(datestr, "%d-%b-%y").strftime("%d/%m/%y")
from dateutil.parser import parse
datestr = "8-DEC-17"
dt = parse(datestr)
print(dt.strftime("%d/%m/%y"))
根据https://docs.python.org/3/library/time.html#time.mktime,mktime()
是localtime()
的反函数。因此,您需要使用 localtime()
而不是 gmtime()
来打印结果:
print(time.strftime("%d/%m/%y ", time.localtime(l)))
输出08/12/17