alueError: unconverted data remains when parsing with format “%Y/%m/%d %H:%M”: “:00 PM”, at position 14493,请举例如何更改代码
时间: 2024-10-19 15:12:38 浏览: 37
游戏人物3D建模 仙剑奇侠 柒 月清疏
这个错误通常发生在尝试将非日期时间格式的数据转换为特定格式(如"%Y/%m/%d %H:%M")的时候,这里提到的`:00 PM`没有被成功解析。比如,如果您的输入是一个包含完整时间信息但格式不正确的字符串,如"2023/12/31 12:00:00 PM"。
原始可能是这样的:
```python
from datetime import datetime
try:
parsed_date = datetime.strptime(input_string, "%Y/%m/%d %H:%M")
except ValueError as e:
print(e)
```
对于这个问题,你需要去掉AM/PM部分,只保留小时和分钟,并且修改日期解析格式。可以试试以下代码:
```python
input_string = "2023/12/31 12:00 PM"
try:
# 删除AM/PM,只保留小时分钟
time_str = input_string.split(" ")[-1].replace(" PM", "")
parsed_date = datetime.strptime(f"{input_string[:10]} {time_str}", "%Y/%m/%d %H:%M")
except ValueError as e:
print(e)
```
这样就假设下午的时间都是12点之后的。如果不确定时间是否一定是24小时制,还可以先检查一下再做处理。
阅读全文