【发布时间】:2021-10-13 01:36:03
【问题描述】:
尝试将整数转换为日期时间时收到以下错误。
错误
OSError: [Errno 22] Invalid argument
代码
from datetime import datetime
anewvalue = [20210805180238, 20210805180239, 20210805180241]
timestamp = datetime.fromtimestamp(int(anewvalue[1]))
print(timestamp.strftime('%Y-%m-%d %H:%M:%S'))
代码说明
- 正在导入
datetime模块。 - 正在初始化一个数组。
- 将数组传递给日期时间。
- 转换为时间戳。
注意
当我传递自定义整数时它工作正常。
【问题讨论】:
-
我从你的代码中得到
ValueError: year 642424 is out of range -
转换为字符串并像
datetime.strptime(str(20210805180238), "%Y%m%d%H%M%S")一样解析 -
我建议您查看 datetime.fromtimestamp() 文档,您将清楚地看到您的方式的错误
-
@MrFuppes datetime.strptime(str(20210805180238), "%Y%m%d%H%M%S") 它起作用了。谢谢
标签: python python-3.x datetime timestamp