将datetime对象更改回python中的字符串

Change datetime object back to string in python

如果我有一个日期时间对象,如datetime.datetime(2017, 7, 20, 15, 0),如何将其转换回"2017-07-20-15-00"格式的字符串?


python内置了日期格式设置,可以使用datetime.strftimestr.format或python中新的f字符串>=3.6:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from datetime import datetime

dt = datetime(2017, 7, 20, 15, 0)

# str.format
strg = '{:%Y-%m-%d %H-%M-%S}'.format(dt)
print(strg)  # 2017-07-20 15-00-00

# datetime.strftime
strg = dt.strftime('%Y-%m-%d %H-%M-%S')
print(strg)  # 2017-07-20 15-00-00

# f-strings in python >= 3.6
strg = f'{dt:%Y-%m-%d %H-%M-%S}'
print(strg)  # 2017-07-20 15-00-00

您可以根据需要调整格式字符串。strftime()strptime()行为解释了格式说明符的含义。