日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python中time模块详解_Python time模块详解

發布時間:2024/9/19 python 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python中time模块详解_Python time模块详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

time 模塊主要包含各種提供日期、時間功能的類和函數。該模塊既提供了把日期、時間格式化為字符串的功能,也提供了從字符串恢復日期、時間的功能。

在 Python 的交互式解釋器中先導入 time 模塊,然后輸入 [e for e in dir(time) if not e.startswith('_')] 命令,即可看到該模塊所包含的全部屬性和函數:>>> [e for e in dir(time) if not e.startswith('_')]

['altzone', 'asctime', 'clock', 'ctime', 'daylight', 'get_clock_info', 'gmtime', 'localtime', 'mktime',

'monotonic',

'perf_counter', 'process_time', 'sleep', 'strftime', 'strptime', 'struct_time', 'time', 'timezone', 'tzname']

在 time 模塊內提供了一個 time.struct_time 類,該類代表一個時間對象,它主要包含 9 個屬性,每個屬性的信息如下表所示:表 1 time.struct_time 類中各屬性的含義字段名字段含義值

tm_year年如 2017、2018 等

tm_mon月如 2、3 等,范圍為 1~12

tm_mday日如 2、3 等,范圍為 1~31

tm_hour時如 2、3 等,范圍為 0~23

tm_min分如 2、3 等,范圍為 0~59

tm_sec秒如 2、3 等,范圍為 0~59

tm_wday周周一為 0,范圍為 0~6

tm_yday一年內第幾天如 65,范圍 1~366

tm_isdst夏時令0、1 或 -1

比如,Python 可以用 time.struct_time(tm_year=2018, tm_mon=5, tm_mday=2, tm_hour=8, tm_min=0, tm_sec=30, tm_wday=3, tm_yday=1, tm_isdst=0) 很清晰地代表時間。

此外,Python 還可以用一個包含 9 個元素的元組來代表時間,該元組的 9 個元素和 struct_time 對象中 9 個屬性的含義是一一對應的。比如程序可以使用(2018, 5, 2, 8, 0, 30, 3, 1, 0)來代表時間。

在日期、時間模塊內常用的功能函數如下:

time.asctime([t]):將時間元組或 struct_time 轉換為時間字符串。如果不指定參數 t,則默認轉換當前時間。

time.ctime([secs]):將以秒數代表的時間轉換為時間宇符串。

time.gmtime([secs]):將以秒數代表的時間轉換為 struct_time 對象。如果不傳入參數,則使用當前時間。

time.localtime([secs]):將以秒數代表的時間轉換為代表當前時間的 struct_time 對象。如果不傳入參數,則使用當前時間。

time.mktime(t):它是 localtime 的反轉函數,用于將 struct_time 對象或元組代表的時間轉換為從 1970 年 1 月 1 日 0 點整到現在過了多少秒。

time.perf_counter():返回性能計數器的值。以秒為單位。

time.process_time():返回當前進程使用 CPU 的時間。以秒為單位。

time.sleep(secs):暫停 secs 秒,什么都不干。

time.strftime(format[, t]):將時間元組或 struct_time 對象格式化為指定格式的時間字符串。如果不指定參數 t,則默認轉換當前時間。

time.strptime(string[, format]):將字符串格式的時間解析成 struct_time 對象。

time.time():返回從 1970 年 1 月 1 日 0 點整到現在過了多少秒。

time.timezone:返回本地時區的時間偏移,以秒為單位。

time.tzname:返回本地時區的名字。

下面程序示范了 time 棋塊的功能函數:import time

# 將當前時間轉換為時間字符串

print(time.asctime())

# 將指定時間轉換時間字符串,時間元組的后面3個元素沒有設置

print(time.asctime((2018, 2, 4, 11, 8, 23, 0, 0 ,0))) # Mon Feb 4 11:08:23 2018

# 將以秒數為代表的時間轉換為時間字符串

print(time.ctime(30)) # Thu Jan 1 08:00:30 1970

# 將以秒數為代表的時間轉換為struct_time對象。

print(time.gmtime(30))

# 將當前時間轉換為struct_time對象。

print(time.gmtime())

# 將以秒數為代表的時間轉換為代表當前時間的struct_time對象

print(time.localtime(30))

# 將元組格式的時間轉換為秒數代表的時間

print(time.mktime((2018, 2, 4, 11, 8, 23, 0, 0 ,0))) # 1517713703.0

# 返回性能計數器的值

print(time.perf_counter())

# 返回當前進程使用CPU的時間

print(time.process_time())

#time.sleep(10)

# 將當前時間轉換為指定格式的字符串

print(time.strftime('%Y-%m-%d %H:%M:%S'))

st = '2018年3月20日'

# 將指定時間字符串恢復成struct_time對象。

print(time.strptime(st, '%Y年%m月%d日'))

# 返回從1970年1970年1月1日0點整到現在過了多少秒。

print(time.time())

# 返回本地時區的時間偏移,以秒為單位

print(time.timezone) # 在國內東八區輸出-28800

運行上面程序,可以看到如下輸出結果:Fri Feb 22 11:28:39 2019

Mon Feb 4 11:08:23 2018

Thu Jan 1 08:00:30 1970

time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=30, tm_wday=3, tm_yday=1,

tm_isdst=0)

time.struct_time(tm_year=2019, tm_mon=2, tm_mday=22, tm_hour=3, tm_min=28, tm_sec=39, tm_wday=4, tm_yday=53,

tm_isdst=0)

time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=30, tm_wday=3, tm_yday=1,

tm_isdst=0)

1517713703.0

0.0

0.140625

2019-02-22 11:28:39

time.struct_time(tm_year=2018, tm_mon=3, tm_mday=20, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=79,

tm_isdst=-1)

1550806119.4960592

-28800

time 模塊中的 strftime() 和 strptime() 兩個函數互為逆函數,其中 strftime() 用于將 struct_time 對象或時間元組轉換為時間字符串;而 strptime() 函數用于將時間字符串轉換為 struct_time 對象。這兩個函數都涉及編寫格式模板,比如上面程序中使用 %Y 代表年、%m 代表月、%d 代表日、%H 代表時、%M 代表分、%S 代表秒。這兩個函數所需要的時間格式字符串支持的指令如下表所示:指

令含義

%a本地化的星期幾的縮寫名,比如 Sun 代表星期天

%A本地化的星期幾的完整名

%b本地化的月份的縮寫名,比如 Jan 代表一月

%B本地化的月份的完整名

%c本地化的日期和時間的表示形式

%d代表一個月中第幾天的數值,范固: 01~31

%H代表 24 小時制的小時,范圍:00~23

%I代表 12 小時制的小時,范圍:01~12

%j一年中第幾天,范圍:001~366

%m代表月份的數值,范圍:01~12

%M代表分鐘的數值,范圍:00~59

%p上午或下午的本地化方式。當使用 strptime() 函數并使用 %I 指令解析小時時,%p 只影響小時字段

%S代表分鐘的數值,范圍:00~61。該范圍確實是 00~61,60 在表示閏秒的時間戳時有效,而 61 則是由于一些歷史原因造成的

%U代表一年中表示第幾周,以星期天為每周的第一天,范圍:00~53。在這種方式下,一年中第一個星期天被認為處于第一周

。當使用 strptime() 函數解析時間字符串時,只有同時指定了星期幾和年份該指令才會有效

%w代表星期幾的數值,范圍:0~6,其中 0 代表周日

%W代表一年小第幾周,以星期一為每周的第一天,范圍:00~53。在這種方式下,一年中第一個星期一被認為處于第一周

。當使用 strptime() 函數解析時間字符串時,只有同時指定了星期幾和年份該指令才會有效

%x本地化的日期的表示形式

%X本地化的時間的表示形式

%y年份的縮寫,范圍:00~99,比如 2018 年就簡寫成 18

%Y年份的完整形式。如 2018

%z顯示時區偏移

%Z時區名(如果時區不行在,則顯示為空)

%%用于代表%符號

總結

以上是生活随笔為你收集整理的python中time模块详解_Python time模块详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。