攝影或3C

Python中的時間處理簡介; timestamp: float = time.time() #獲取時間戳; localtime = time.localtime( timestamp ) #獲取localtime; strftime = time.strftime(‘%Y-%m-%d %H:%M:%S’, localtime) #獲取strftime #str format time

在Python編程中,處理日期和時間是一個常見的任務。time模塊提供了一系列的函數來執行與時間相關的操作。本文將通過一個簡單的示例來介紹如何獲取當前時間戳,轉換為本地時間,並格式化時間字符串。

1. 獲取當前時間戳
時間戳是自1970年1月1日(UTC)以來的秒數,它是一個浮點數。使用time.time()函數可以獲取當前時間戳。

import time

timestamp = time.time()
print(timestamp)

輸出釋例: 1707560461.7108967

  1. 轉換時間戳為本地時間
    獲取到的時間戳可以轉換為更易讀的時間格式。time.localtime()函數接受一個時間戳,並返回一個struct_time對象,這個對象包含了年、月、日等信息。
localtime = time.localtime(timestamp)
print(localtime)

輸出示例:
time.struct_time(tm_year=2024, tm_mon=2, tm_mday=10, tm_hour=18, tm_min=21, tm_sec=1, tm_wday=5, tm_yday=41, tm_isdst=0)

  1. 格式化時間
    要將struct_time對象或時間戳格式化為易讀的字符串,可以使用time.strftime()函數。這個函數接受兩個參數:格式字符串和要格式化的時間(默認為當前時間)。注意,正確的使用方式是將格式字符串作為第一個參數。
strftime = time.strftime('%Y-%m-%d %H:%M:%S', localtime)
print(strftime)

這會輸出類似2024-02-10 18:14:52的格式化時間字符串。

常見錯誤
在嘗試使用time.strftime()時,可能會遇到幾種類型的錯誤,主要是因為參數類型不匹配或者函數使用不當。例如:

嘗試直接格式化時間戳會導致TypeError,因為strftime()的第二個參數應該是struct_time對象或省略(默認為當前時間),而不是浮點數。
錯誤地使用time.strtime(應該是strftime),這會導致AttributeError,因為time模塊沒有strtime這個屬性。
輸出結果:

code:

import time

# 获取当前时间戳
timestamp = time.time()

# 转换时间戳为本地时间
localtime = time.localtime(timestamp)

# 格式化时间
strftime = time.strftime('%Y-%m-%d %H:%M:%S', localtime)
print(strftime)

這段代碼展示了如何從獲取當前時間戳開始,經過轉換和格式化,最終得到易讀的時間字符串,避免了之前提到的錯誤用法。希望這篇簡短的教學文章能幫助你更好地理解和使用Python的time模塊進行時間處理。
輸出結果:

time.strftime?

code:

# -*- coding: utf-8 -*-
"""
Created on Sat Feb 10 19:15:26 2024

@author: SavingKing
"""

import time

def timestamp2strftime(timestamp:float = time.time()):
    localtime=time.localtime(timestamp)
    fmt = "_%y%m%d_%H%M%S"
    strftime = time.strftime(fmt,localtime)
    return strftime

strftime = timestamp2strftime()
print(strftime)

輸出結果:

可以接在檔名之後,
不同時間點產出的檔案
就不會被覆蓋

推薦hahow線上學習python: https://igrape.net/30afN

儲蓄保險王

儲蓄險是板主最喜愛的儲蓄工具,最喜愛的投資理財工具則是ETF,最喜愛的省錢工具則是信用卡