日期时间对象到包含 AM/PM 的字符串
Datetime object to string containing AM/PM
我目前有一个 datetime
对象,其时间看起来像 06:00:00
并且 am
试图将它转换为看起来像“6:00 am
”的字符串。
我一直在尝试使用 Python Strftime
库,但遇到了问题,有人可以指出正确的方向吗?谢谢 :)
您应该可以使用 %I:%M %p
,按照以下记录:
>>> import datetime
>>> now = datetime.datetime.now()
>>> now
datetime.datetime(2020, 3, 30, 14, 6, 49, 62354)
>>> print(now.strftime("%I:%M %p"))
02:06 PM
有关不同格式代码的列表,请参阅 here。
如果正如你的问题所暗示的那样,你需要它没有小时的前导零,并且在小写中,你可以只使用正则表达式来表示前者和lower()
对于后者:
>>> import re
>>> print(re.sub("^0", "", now.strftime("%I:%M %p")).lower())
2:06 pm
这对我有用:
>>> import datetime
>>> datetime.datetime.now().strftime( '%H:%M %p' )
'15:09 PM'
我目前有一个 datetime
对象,其时间看起来像 06:00:00
并且 am
试图将它转换为看起来像“6:00 am
”的字符串。
我一直在尝试使用 Python Strftime
库,但遇到了问题,有人可以指出正确的方向吗?谢谢 :)
您应该可以使用 %I:%M %p
,按照以下记录:
>>> import datetime
>>> now = datetime.datetime.now()
>>> now
datetime.datetime(2020, 3, 30, 14, 6, 49, 62354)
>>> print(now.strftime("%I:%M %p"))
02:06 PM
有关不同格式代码的列表,请参阅 here。
如果正如你的问题所暗示的那样,你需要它没有小时的前导零,并且在小写中,你可以只使用正则表达式来表示前者和lower()
对于后者:
>>> import re
>>> print(re.sub("^0", "", now.strftime("%I:%M %p")).lower())
2:06 pm
这对我有用:
>>> import datetime
>>> datetime.datetime.now().strftime( '%H:%M %p' )
'15:09 PM'