技术咨询:如何将arrow.Arrow对象转换为毫秒数值?
如何将arrow.Arrow对象转换为毫秒值
嘿,这个问题其实挺容易解决的,Arrow库本身就提供了直接获取毫秒级时间戳的方式,当然也可以手动计算,我给你两种方案参考:
方案一:使用Arrow内置的timestamp_ms属性(推荐)
Arrow对象自带了timestamp_ms属性,直接调用就能得到长整型的毫秒级时间戳,不用自己做浮点运算,既简洁又能避免精度问题:
import arrow # 示例:创建一个当前时间的Arrow对象 current_time = arrow.now() # 获取毫秒级时间戳 ms_timestamp = current_time.timestamp_ms print(type(ms_timestamp)) # 输出: <class 'int'> print(ms_timestamp) # 输出类似: 1718562345678
方案二:手动计算(兼容旧版本Arrow)
如果你的Arrow版本比较旧,没有timestamp_ms属性,可以通过timestamp()方法先获取秒级时间戳,再乘以1000并转换为整数:
import arrow current_time = arrow.now() # 先获取秒级时间戳(float类型),再转毫秒 ms_timestamp = int(current_time.timestamp() * 1000) print(ms_timestamp)
注意:手动计算时,因为
timestamp()返回的是浮点型,乘以1000后可能会有微小的精度误差,所以更推荐用第一种方案。
内容的提问来源于stack exchange,提问作者Wild Goat
相关产品推荐
相关产品推荐

