如何使用strptime将非补零时间字符串转换为datetime?
问题解答:strptime读取非补零12小时制时间字符串
可以的,Python的strptime()完全支持读取不带前导零的12小时制时间字符串,核心是使用对应的格式指令:
- 处理带前导零的12小时制小时(如
01)用%I - 处理不带前导零的12小时制小时(如
1)用%l(小写字母L),它能匹配1位或2位的小时数,再配合%p识别am/pm标识。
示例代码:
from datetime import datetime # 解析无空格的非补零时间字符串 time_str = '1:00am' dt = datetime.strptime(time_str, '%l:%M%p') print(dt) # 输出:1900-01-01 01:00:00 # 解析带空格的非补零时间字符串(如'1:00 am') time_str_with_space = '1:00 am' dt_space = datetime.strptime(time_str_with_space, '%l:%M %p') print(dt_space) # 输出:1900-01-01 01:00:00
内容的提问来源于stack exchange,提问作者Scorb
相关产品推荐
相关产品推荐

