当前位置: 代码网 > it编程>前端脚本>Python > Python中获取13位和10位时间戳的方法

Python中获取13位和10位时间戳的方法

2025年11月06日 Python 我要评论
1. 获取当前时间戳13位时间戳(毫秒级)import timeimport datetime# 方法1:使用time模块timestamp_13_1 = int(time.time() * 1000

1. 获取当前时间戳

13位时间戳(毫秒级)

import time
import datetime

# 方法1:使用time模块
timestamp_13_1 = int(time.time() * 1000)
print("13位时间戳(方法1):", timestamp_13_1)

# 方法2:使用datetime模块
timestamp_13_2 = int(datetime.datetime.now().timestamp() * 1000)
print("13位时间戳(方法2):", timestamp_13_2)

10位时间戳(秒级)

# 方法1:使用time模块
timestamp_10_1 = int(time.time())
print("10位时间戳(方法1):", timestamp_10_1)

# 方法2:使用datetime模块
timestamp_10_2 = int(datetime.datetime.now().timestamp())
print("10位时间戳(方法2):", timestamp_10_2)

2. 将时间戳转换为可读时间

# 13位时间戳转可读时间
timestamp_13 = int(time.time() * 1000)
readable_time_13 = datetime.datetime.fromtimestamp(timestamp_13 / 1000).strftime('%y-%m-%d %h:%m:%s.%f')
print("13位时间戳转可读时间:", readable_time_13)

# 10位时间戳转可读时间
timestamp_10 = int(time.time())
readable_time_10 = datetime.datetime.fromtimestamp(timestamp_10).strftime('%y-%m-%d %h:%m:%s')
print("10位时间戳转可读时间:", readable_time_10)

3. 将日期字符串转换为时间戳

from datetime import datetime

date_str = "2023-01-01 12:00:00"

# 转换为10位时间戳(秒级)
timestamp_10 = int(datetime.strptime(date_str, "%y-%m-%d %h:%m:%s").timestamp())
print("日期字符串转10位时间戳:", timestamp_10)

# 转换为13位时间戳(毫秒级)
timestamp_13 = int(datetime.strptime(date_str, "%y-%m-%d %h:%m:%s").timestamp() * 1000)
print("日期字符串转13位时间戳:", timestamp_13)

4. 注意事项

时间戳的精度

  • 10位时间戳表示秒级精度
  • 13位时间戳表示毫秒级精度

时区问题

  • python的time.time()datetime.now()返回的是本地时间
  • 如果需要utc时间,可以使用datetime.datetime.utcnow()

跨平台兼容性

  • 这些方法在windows、linux和macos上都能正常工作

大数处理

  • 对于非常大的时间戳(如超过32位整数范围),确保使用python 3的int类型

5. 完整示例代码

import time
import datetime

def get_timestamps():
    # 获取当前时间戳
    now = datetime.datetime.now()
    
    # 13位时间戳(毫秒级)
    timestamp_13 = int(now.timestamp() * 1000)
    
    # 10位时间戳(秒级)
    timestamp_10 = int(now.timestamp())
    
    # 转换为可读时间
    readable_13 = now.strftime('%y-%m-%d %h:%m:%s.%f')
    readable_10 = now.strftime('%y-%m-%d %h:%m:%s')
    
    print(f"当前时间: {now}")
    print(f"13位时间戳: {timestamp_13}")
    print(f"10位时间戳: {timestamp_10}")
    print(f"13位时间戳对应时间: {readable_13}")
    print(f"10位时间戳对应时间: {readable_10}")
    
    # 示例:将日期字符串转换为时间戳
    date_str = "2023-01-01 12:00:00"
    dt = datetime.datetime.strptime(date_str, "%y-%m-%d %h:%m:%s")
    print(f"\n日期字符串 '{date_str}' 转换为:")
    print(f"10位时间戳: {int(dt.timestamp())}")
    print(f"13位时间戳: {int(dt.timestamp() * 1000)}")

if __name__ == "__main__":
    get_timestamps()

运行这段代码将输出当前时间的时间戳以及如何将日期字符串转换为时间戳的示例。

到此这篇关于python中获取13位和10位时间戳的方法的文章就介绍到这了,更多相关python获取时间戳内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com