Python學海無涯路 第23回 time模組

2021-09-24 19:36:45 字數 3771 閱讀 9776

4、時間戳

5、元組(struct_time)

5.2、將格式化字串轉換為struct_time

6、格式化的時間

6.2、將struct_time轉化為格式化的時間

6.3、格式化時間的符號

6.4、格式化時間的符號

7、其它函式

8、格式相互轉換關係圖

格林尼治和格林威治都是greenwich的音譯叫法。

前中國地名委員會辦公室與中國地圖出版社譯名組、新華社譯名室共同商議,為促進漢譯外國地名以及外來科技術語的標準化、規範化,決定將greenwich改譯為「格林尼治」,捨棄「格林威治」的譯法,與天文學界的譯名相一致。

為了方便,在不需要精確到秒的情況下,通常也將gmt 和utc 視作等同。

時間戳表示的是從2023年1月1日開始按秒計算的偏移量。

例:

import time

print

(time.time())

#返回當前時間的時間戳

輸出:

1561729665.5359492

將乙個struct_time轉化為時間戳。

例:

import time

t=time.localtime(

)print

(time.mktime(t)

)

輸出:

1561733693.0

struct_time元組共有9個元素共九個元素:(年,月,日,時,分,秒,一年中第幾周,一年中第幾天,夏令時)

import time

#預設獲得本時區的struct_time

print

(time.localtime())

print

(time.localtime(time.time())

)

輸出:

time.struct_time(tm_year=2019, tm_mon=6, tm_mday=28, tm_hour=21, tm_min=58, tm_sec=16, tm_wday=4, tm_yday=179, tm_isdst=0)

time.struct_time(tm_year=2019, tm_mon=6, tm_mday=28, tm_hour=21, tm_min=58, tm_sec=16, tm_wday=4, tm_yday=179, tm_isdst=0)

import time

#預設獲得本gmt,0時區的struct_time

print

(time.gmtime())

print

(time.gmtime(time.time())

)

輸出:

time.struct_time(tm_year=2019, tm_mon=6, tm_mday=28, tm_hour=13, tm_min=58, tm_sec=16, tm_wday=4, tm_yday=179, tm_isdst=0)

time.struct_time(tm_year=2019, tm_mon=6, tm_mday=28, tm_hour=13, tm_min=58, tm_sec=16, tm_wday=4, tm_yday=179, tm_isdst=0)

import time

print

(time.strftime(

"%y-%m-%d %x"

,time.localtime(0)

))print

(time.strftime(

"%y-%m-%d %x"

,time.gmtime(0)

))

輸出:

1970-01-01 08:00:00

1970-01-01 00:00:00

注:中國在東八區,與0時區相差8小時

import time

print

(time.strptime(

"2019-06-28 23:08:33"

,"%y-%m-%d %x"

))

輸出:

time.struct_time(tm_year=2019, tm_mon=6, tm_mday=28, tm_hour=23, tm_min=8, tm_sec=33, tm_wday=4, tm_yday=179, tm_isdst=-1)

import time

print

(time.ctime(

))

輸出:

fri jun 28 22:34:22 2019

import time

print

(time.asctime(

))

輸出:

fri jun 28 22:28:33 2019

import time

print

(time.strftime(

"%y-%m-%d %x"

,time.localtime())

)

輸出:

2019-06-28 23:08:33

符號含義

%a本地的簡寫工作日名稱。

%a本地的完整工作日名稱。

%b本地簡化的月份名稱。

%b本地的完整月份名稱。

%c本地相應的日期和時間表示。

%d乙個十進位制數字[01,31]。

%h小時(24小時制),24小時制,00-23。

%i小時(12小時制),12小時制,01-12。

%j一年中的十進位制數[001,366]。

%m月為十進位制數[01,12]。

%m以十進位制數分鐘[00,59]。

%p本地am或者pm的相應符。

%s秒為十進位制數[00,61]。

%u年的星期數(星期日為星期的第一天)為十進位制數[00,53]。在第乙個星期日之前的新的一年的所有天被認為是在第0周。

%w工作日為十進位制數[0(星期日),6]。

%w年的星期數(星期一作為星期的第一天)作為十進位制數[00,53]。在第乙個星期一之前的新的一年中的所有天被認為是在第0周。

%x語言環境的適當日期表示。

%x語言環境的適當時間表示。

%y年,無世紀作為十進位制數[00,99]。

%y年份以世紀為十進位制數。

%z指示與+ hhmm或-hhmm形式的utc / gmt的正或負時差的時區偏移,其中h表示十進位制小時數字,m表示十進位制分數字[-23:59,+23:59]。

%z時區名稱(如果沒有時區,則不包含字元)。

%%字面值』%'字元。

import time

print

(time.strftime(

"%x"

,time.localtime())

)time.sleep(3)

#延遲3秒

print

(time.strftime(

"%x"

,time.localtime())

)

輸出:

Python學海無涯路 第08回 函式

3 返回值 def test x y 2 x return y呼叫函式時可使用的正式引數型別 引數須以正確的順序傳入函式。呼叫時的數量必須和宣告時的一樣,不然會出現語法錯誤。使用關鍵字引數允許函式呼叫時引數的順序與宣告時不一致,因為 python 直譯器能夠用引數名匹配引數值。如果引數中還有其他引數...

Python學海無涯路 第12回 map函式

將列表中的每個元素加1,可以使用以下方法 usr bin env python coding utf 8 array num 1 2,3 4 定義乙個函式,數字加1 deffunc add x return x 1def map test func,array ret 定義乙個空列表 for i i...

Python學海無涯路 第17回 迭代器

可迭代物件 實現了迭代器協議的物件 迭代器有兩個基本的方法 iter 和 next for迴圈的本質 將物件用 iter 轉換成可迭代物件,呼叫其next 方法。字串 列表 元組 字典 集合 檔案物件,這些都不是可迭代物件,只不過在for迴圈時,呼叫了他們內部的 iter 方法,把它們變成了可迭代物...