python日期时间错误-错误的1970年

python日期时间错误-错误的1970年,python,datetime,Python,Datetime,有人能解释一下:为什么设置单位为'ms'的年份是1970年 import pandas as pd from datetime import datetime, timedelta dt1 = pd.to_datetime(1574846518.25088,unit='s') print('dt1' , dt1) dt2 = pd.to_datetime(1574846518.25088,unit='ms') print('dt2' , dt2) 输出: 这只是一个数学问题,一秒钟是10

有人能解释一下:为什么设置单位为'ms'的年份是1970年

import pandas as pd
from datetime import datetime, timedelta

dt1 =  pd.to_datetime(1574846518.25088,unit='s')
print('dt1' , dt1)
dt2 =  pd.to_datetime(1574846518.25088,unit='ms')
print('dt2' , dt2)
输出:


这只是一个数学问题,一秒钟是1000毫秒,因此将单位设置为
ms
会让你在一秒钟内取数值,然后除以1000,这会使数值非常低,18227天变为18天


好吧…自1970年1月1日起1574846518.25088秒和自1970年1月1日起1574846518.25088毫秒将导致不同的结果…阅读您现在可能会考虑接受答案或评论以获得详细信息;)奖励那些为你付出时间的人;)
dt1 2019-11-27 09:21:58.250880003
dt2 1970-01-19 05:27:26.518250880
value = 1574846518

print(value, 's')  # 1574846518 s
print(value // 60, 'm')  # 26247441 m
print(value // 3600, 'h')  # 437457 h
print(value // 86400, 'd')  # 18227 d
print(value // (86400 * 365), 'y')  # 49 y

print()

print(value, 'ms')  # 1574846518 ms
print(value // 1000, 's')  # 1574846 s
print(value // 60000, 'm')  # 26247 m
print(value // 3600000, 'h')  # 437 h
print(value // 86400000, 'd')  # 18j