Python中獲取13位和10位時(shí)間戳的方法
1. 獲取當(dāng)前時(shí)間戳
13位時(shí)間戳(毫秒級(jí))
import time
import datetime
# 方法1:使用time模塊
timestamp_13_1 = int(time.time() * 1000)
print("13位時(shí)間戳(方法1):", timestamp_13_1)
# 方法2:使用datetime模塊
timestamp_13_2 = int(datetime.datetime.now().timestamp() * 1000)
print("13位時(shí)間戳(方法2):", timestamp_13_2)
10位時(shí)間戳(秒級(jí))
# 方法1:使用time模塊
timestamp_10_1 = int(time.time())
print("10位時(shí)間戳(方法1):", timestamp_10_1)
# 方法2:使用datetime模塊
timestamp_10_2 = int(datetime.datetime.now().timestamp())
print("10位時(shí)間戳(方法2):", timestamp_10_2)
2. 將時(shí)間戳轉(zhuǎn)換為可讀時(shí)間
# 13位時(shí)間戳轉(zhuǎn)可讀時(shí)間
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位時(shí)間戳轉(zhuǎn)可讀時(shí)間:", readable_time_13)
# 10位時(shí)間戳轉(zhuǎn)可讀時(shí)間
timestamp_10 = int(time.time())
readable_time_10 = datetime.datetime.fromtimestamp(timestamp_10).strftime('%Y-%m-%d %H:%M:%S')
print("10位時(shí)間戳轉(zhuǎn)可讀時(shí)間:", readable_time_10)
3. 將日期字符串轉(zhuǎn)換為時(shí)間戳
from datetime import datetime
date_str = "2023-01-01 12:00:00"
# 轉(zhuǎn)換為10位時(shí)間戳(秒級(jí))
timestamp_10 = int(datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S").timestamp())
print("日期字符串轉(zhuǎn)10位時(shí)間戳:", timestamp_10)
# 轉(zhuǎn)換為13位時(shí)間戳(毫秒級(jí))
timestamp_13 = int(datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S").timestamp() * 1000)
print("日期字符串轉(zhuǎn)13位時(shí)間戳:", timestamp_13)
4. 注意事項(xiàng)
時(shí)間戳的精度:
- 10位時(shí)間戳表示秒級(jí)精度
- 13位時(shí)間戳表示毫秒級(jí)精度
時(shí)區(qū)問(wèn)題:
- Python的
time.time()和datetime.now()返回的是本地時(shí)間 - 如果需要UTC時(shí)間,可以使用
datetime.datetime.utcnow()
跨平臺(tái)兼容性:
- 這些方法在Windows、Linux和macOS上都能正常工作
大數(shù)處理:
- 對(duì)于非常大的時(shí)間戳(如超過(guò)32位整數(shù)范圍),確保使用Python 3的
int類型
5. 完整示例代碼
import time
import datetime
def get_timestamps():
# 獲取當(dāng)前時(shí)間戳
now = datetime.datetime.now()
# 13位時(shí)間戳(毫秒級(jí))
timestamp_13 = int(now.timestamp() * 1000)
# 10位時(shí)間戳(秒級(jí))
timestamp_10 = int(now.timestamp())
# 轉(zhuǎn)換為可讀時(shí)間
readable_13 = now.strftime('%Y-%m-%d %H:%M:%S.%f')
readable_10 = now.strftime('%Y-%m-%d %H:%M:%S')
print(f"當(dāng)前時(shí)間: {now}")
print(f"13位時(shí)間戳: {timestamp_13}")
print(f"10位時(shí)間戳: {timestamp_10}")
print(f"13位時(shí)間戳對(duì)應(yīng)時(shí)間: {readable_13}")
print(f"10位時(shí)間戳對(duì)應(yīng)時(shí)間: {readable_10}")
# 示例:將日期字符串轉(zhuǎn)換為時(shí)間戳
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}' 轉(zhuǎn)換為:")
print(f"10位時(shí)間戳: {int(dt.timestamp())}")
print(f"13位時(shí)間戳: {int(dt.timestamp() * 1000)}")
if __name__ == "__main__":
get_timestamps()
運(yùn)行這段代碼將輸出當(dāng)前時(shí)間的時(shí)間戳以及如何將日期字符串轉(zhuǎn)換為時(shí)間戳的示例。
到此這篇關(guān)于Python中獲取13位和10位時(shí)間戳的方法的文章就介紹到這了,更多相關(guān)Python獲取時(shí)間戳內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python3中urllib庫(kù)添加請(qǐng)求頭的兩種方式
Python?3中的urllib模塊可以用來(lái)處理URL,包括下載和上傳文件、創(chuàng)建和讀取cookie、訪問(wèn)Web?API等,本文給大家介紹Python3中urllib庫(kù)添加請(qǐng)求頭的兩種方式,感興趣的朋友一起看看吧2023-10-10
用PyInstaller把Python代碼打包成單個(gè)獨(dú)立的exe可執(zhí)行文件
這篇文章主要介紹了用PyInstaller把Python代碼打包成單個(gè)獨(dú)立的exe可執(zhí)行文件,需要的朋友可以參考下2018-05-05
Python自動(dòng)化辦公之Excel數(shù)據(jù)的寫入
這篇文章主要為大家詳細(xì)介紹一下Python中excel的寫入模塊- xlsxwriter,并利用該模塊實(shí)現(xiàn)Excel數(shù)據(jù)的寫入,感興趣的小伙伴可以了解一下2022-05-05

