一、時間戳與string相互轉換的概念
時間戳是指從某個特定時間(例如:1970年1月1日00:00:00 UTC)起經過的秒數,通常用於記錄事件發生時間。string是一種數據類型,用於存儲字符串。時間戳與string相互轉換是指將時間戳轉換成符合一定格式規則的string類型數據或將string類型數據轉換成時間戳。
二、Python中時間戳轉string的方法
在Python中,有多種方式將時間戳轉換成string。
1. 使用time模塊的strftime()
import time timestamp = 1615018125 # 時間戳,單位為秒 # 將時間戳轉換成指定格式的日期字符串 date_str = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(timestamp)) print(date_str) # 輸出:2021-03-06 10:48:45
使用time模塊的strftime()函數,需要傳入時間戳和格式參數。strftime()函數返回一個格式化的時間字符串。
2. 使用datetime模塊的strftime()
import datetime timestamp = 1615018125 # 時間戳,單位為秒 # 將時間戳轉換成指定格式的日期字符串 date_str = datetime.datetime.fromtimestamp(timestamp).strftime("%Y-%m-%d %H:%M:%S") print(date_str) # 輸出:2021-03-06 10:48:45
使用datetime模塊的fromtimestamp()函數將時間戳轉換成datetime對象,然後再使用strftime()函數將datetime對象格式化成指定格式的時間字符串。
3. 使用pandas模塊的to_datetime()
import pandas as pd timestamp = 1615018125 # 時間戳,單位為秒 # 將時間戳轉換成指定格式的日期字符串 date_str = pd.to_datetime(timestamp, unit='s').strftime("%Y-%m-%d %H:%M:%S") print(date_str) # 輸出:2021-03-06 10:48:45
使用pandas模塊的to_datetime()函數將時間戳轉換成datetime對象,然後再使用strftime()函數將datetime對象格式化成指定格式的時間字符串。
三、Python中string轉時間戳的方法
在Python中,有多種方式將string轉換成時間戳。
1. 使用time模塊的strptime()和mktime()
import time date_str = '2021-03-06 10:48:45' # 時間字符串 time_tuple = time.strptime(date_str, "%Y-%m-%d %H:%M:%S") # 轉換成時間元組 timestamp = time.mktime(time_tuple) # 轉換成時間戳 print(timestamp) # 輸出:1615018125.0
使用time模塊的strptime()函數將日期字符串轉換成時間元組,然後使用mktime()函數將時間元組轉換成時間戳。
2. 使用datetime模塊的strptime()和timestamp()
import datetime date_str = '2021-03-06 10:48:45' # 時間字符串 dt_obj = datetime.datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S") # 轉換成datetime對象 timestamp = dt_obj.timestamp() # 轉換成時間戳 print(timestamp) # 輸出:1615018125.0
使用datetime模塊的strptime()函數將日期字符串轉換成datetime對象,然後使用timestamp()函數將datetime對象轉換成時間戳。
3. 使用pandas模塊的to_datetime()和astype()
import pandas as pd date_str = '2021-03-06 10:48:45' # 時間字符串 timestamp = pd.to_datetime(date_str).astype(int) // 10**9 # 轉換成時間戳 print(timestamp) # 輸出:1615018125
使用pandas模塊的to_datetime()函數將日期字符串轉換成datetime對象,然後使用astype()函數將datetime對象轉換成int類型數據,併除以10的9次方,得到對應的時間戳。
四、常用日期格式串
在使用strftime()函數格式化日期字符串時,常用的日期格式串包括:
- %Y:四位數的年份
- %m:兩位數的月份(01~12)
- %d:兩位數的日(01~31)
- %H:24小時制的小時數(00~23)
- %M:兩位數的分鐘數(00~59)
- %S:兩位數的秒數(00~59)
五、結論
Python中時間戳與string相互轉換有多種方式,本文介紹了常用的方法,並給出了示例代碼。在使用strftime()函數格式化日期字符串時,需要注意常用的日期格式串。
原創文章,作者:AFNIE,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/368316.html