time函數的用法詳解

在編程開發中,時間的概念很重要,而time函數就是處理時間相關問題的重要函數之一。本文將從多個方面對time函數用法作詳細闡述,包括時間戳相關、格式化輸出等問題,幫助你更好地掌握time函數。

一、時間戳相關

時間戳是指從1970年1月1日0時0分0秒起至現在的總毫秒數,它是時間處理中常用的一個重要概念。在Python中,可以通過time函數來獲取當前時間的時間戳:

import time

timestamp = time.time()
print('當前時間戳為:', timestamp)

上述代碼使用了time.time()函數來獲取當前時間的時間戳,並將其輸出到控制台。該函數返回的是一個浮點數類型的值。

程序輸出結果如下:

當前時間戳為: 1616426628.304026

除了上述方式獲取當前時間戳外,還可以使用time()傳入一個時間元組來獲取指定時間的時間戳,該函數的完整形式如下:

time.mktime(t)

其中,參數t是一個時間元組,表示需要轉化成時間戳的時間。可以通過time.struct_time類來生成一個時間元組,常用的方法如下:

import time

#獲取當前時間
localtime = time.localtime(time.time())
print('當前日期:', localtime)

#格式化輸出日期
print(time.strftime('%Y-%m-%d %H:%M:%S', localtime))

#將日期轉化成時間戳
timestamp = time.mktime(localtime)
print('當前時間戳為:', timestamp)

上述代碼通過localtime()函數獲取了當前系統時間,並使用strftime()函數格式化輸出了日期字符串,最後使用mktime()函數將日期轉換成了時間戳。程序輸出結果如下:

當前日期:time.struct_time(tm_year=2021, tm_mon=3, tm_mday=22, tm_hour=10, tm_min=49, tm_sec=7, tm_wday=0, tm_yday=81, tm_isdst=0)
2021-03-22 10:49:07
當前時間戳為: 1616414947.0

可以看到,經過多次轉換,最終得到的時間戳結果與之前獲取當前時間戳的方法相同。

二、時間格式化輸出

除了獲取時間戳外,time函數還可以進行時間格式化輸出。Python提供了豐富的時間格式化方式,現在我們來看看常用的一些方式:

1. strftime格式化方式

strftime()函數可以將時間元組轉換為指定格式的字符串進行輸出,具體用法如下:

import time

#獲取當前時間
localtime = time.localtime(time.time())

# 格式化日期
print(time.strftime('%Y-%m-%d %H:%M:%S', localtime))
print(time.strftime('%a %b %d %H:%M:%S %Y', localtime))

如上例所示,可以根據指定的格式化標籤來格式化輸出日期字符串。常用的標籤有:

  • %Y:四位數的年份
  • %m:兩位數的月份(01-12)
  • %d:兩位數的日(01-31)
  • %H:24小時制的小時(00-23)
  • %M:兩位數的分鐘(00-59)
  • %S:兩位數的秒(00-59)
  • %a:本地化的縮寫星期幾名稱
  • %A:本地化的完整星期幾名稱
  • %b:本地化縮寫月份名稱
  • %B:本地化完整月份名稱
  • %c:本地化的日期和時間表示法
  • %j:一年中的第幾天(001-366)
  • %p:本地化的AM或PM標記
  • %U:當年的第幾周,從第一個星期日開始算(00-53)
  • %w:星期幾的數字表示(0-6),0表示周日
  • %W:當年的第幾周,從第一個星期一開始算(00-53)
  • %x:本地化的日期表示法
  • %X:本地化的時間表示法
  • %y:兩位數的年份表示(00-99)
  • %Z:本地化時區名稱
  • %%:文本%

上述代碼中輸出了兩個日期字符串,第一個是標準日期格式,第二個是一般情況下使用的日期格式。程序輸出結果如下:

2021-03-22 15:47:16
Mon Mar 22 15:47:16 2021

2. strptime格式化方式

strptime()函數與strftime()函數相反,可以將字符串格式的日期轉換成對應的時間元組。常用的格式化標籤與strftime()函數基本相同:

import time

#將字符串格式的日期時間轉化成時間元組
str_time = '2021-3-22 20:30:00'
time_tuple = time.strptime(str_time, '%Y-%m-%d %H:%M:%S')
print(time_tuple)

上述代碼將字符串形式的日期轉換成時間元組,輸出結果如下:

time.struct_time(tm_year=2021, tm_mon=3, tm_mday=22, tm_hour=20, tm_min=30, tm_sec=0, tm_wday=0, tm_yday=81, tm_isdst=-1)

三、其他時間函數

除了上述提到的time()、localtime()、gmtime()、mktime()、strftime()、strptime()等常見的函數外,time模塊還提供了一些其他的時間處理函數。

1. sleep()函數

sleep()函數用於暫停程序的執行,讓程序等待一定的時間之後再繼續執行。通常情況下,sleep()函數接收一個浮點數或整數類型的參數,表示需要暫停的時間(單位為秒)。下面是一個簡單的例子:

import time

print('開始執行')
time.sleep(2)
print('等待2秒後,程序繼續執行')

上述代碼中,程序在輸出“開始執行”之後,使用sleep函數暫停了2秒,等待時間到達之後再輸出“等待2秒後,程序繼續執行”。程序輸出結果如下:

開始執行
等待2秒後,程序繼續執行

2. clock()函數

clock()函數用於計算程序執行的時間。在Python3.3之後,clock()函數已經被移除,建議使用使用perf_counter()或process_time()函數替代,如下:

import time

#獲取程序開始執行的時間
t0 = time.perf_counter()

#執行程序
for i in range(100000):
  pass

# 獲取程序結束執行的時間
t1 = time.perf_counter()

print('程序執行的時間為:', t1 - t0)

上述代碼中,我們使用了perf_counter()函數獲取了程序開始執行的時間和結束執行的時間,並計算出了程序執行的時間。程序輸出結果如下:

程序執行的時間為:0.001331413999983385

結語

本文從時間戳、時間格式化輸出和其他時間函數三個方面詳細闡述了time函數的用法。time函數是Python中處理時間相關問題的重要工具之一,熟練掌握其用法能帶來更加高效的編程體驗。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/198666.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-04 10:26
下一篇 2024-12-04 10:26

相關推薦

  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python中capitalize函數的使用

    在Python的字符串操作中,capitalize函數常常被用到,這個函數可以使字符串中的第一個單詞首字母大寫,其餘字母小寫。在本文中,我們將從以下幾個方面對capitalize函…

    編程 2025-04-29
  • Python中set函數的作用

    Python中set函數是一個有用的數據類型,可以被用於許多編程場景中。在這篇文章中,我們將學習Python中set函數的多個方面,從而深入了解這個函數在Python中的用途。 一…

    編程 2025-04-29
  • 單片機打印函數

    單片機打印是指通過串口或並口將一些數據打印到終端設備上。在單片機應用中,打印非常重要。正確的打印數據可以讓我們知道單片機運行的狀態,方便我們進行調試;錯誤的打印數據可以幫助我們快速…

    編程 2025-04-29
  • 三角函數用英語怎麼說

    三角函數,即三角比函數,是指在一個銳角三角形中某一角的對邊、鄰邊之比。在數學中,三角函數包括正弦、餘弦、正切等,它們在數學、物理、工程和計算機等領域都得到了廣泛的應用。 一、正弦函…

    編程 2025-04-29
  • Python3定義函數參數類型

    Python是一門動態類型語言,不需要在定義變量時顯示的指定變量類型,但是Python3中提供了函數參數類型的聲明功能,在函數定義時明確定義參數類型。在函數的形參後面加上冒號(:)…

    編程 2025-04-29
  • Python實現計算階乘的函數

    本文將介紹如何使用Python定義函數fact(n),計算n的階乘。 一、什麼是階乘 階乘指從1乘到指定數之間所有整數的乘積。如:5! = 5 * 4 * 3 * 2 * 1 = …

    編程 2025-04-29
  • Python定義函數判斷奇偶數

    本文將從多個方面詳細闡述Python定義函數判斷奇偶數的方法,並提供完整的代碼示例。 一、初步了解Python函數 在介紹Python如何定義函數判斷奇偶數之前,我們先來了解一下P…

    編程 2025-04-29
  • Python函數名稱相同參數不同:多態

    Python是一門面向對象的編程語言,它強烈支持多態性 一、什麼是多態多態是面向對象三大特性中的一種,它指的是:相同的函數名稱可以有不同的實現方式。也就是說,不同的對象調用同名方法…

    編程 2025-04-29
  • 分段函數Python

    本文將從以下幾個方面詳細闡述Python中的分段函數,包括函數基本定義、調用示例、圖像繪製、函數優化和應用實例。 一、函數基本定義 分段函數又稱為條件函數,指一條直線段或曲線段,由…

    編程 2025-04-29

發表回復

登錄後才能評論