零基礎小白必看篇:python時間處理大全

在平常的代碼中,我們常常需要與時間打交道揩徊。在Python中,與時間處理有關的模塊就包括:time嵌赠,datetime以及calendar塑荒。這篇文章,主要講解time模塊姜挺。

在開始之前齿税,首先要說明這幾點:

在Python中,通常有這幾種方式來表示時間:時間戳?(給機器看的)炊豪、格式化的時間字符串(給人看的) 凌箕、struct_time元組機構(gòu)化時間(計算用的)拧篮。

UTC(Coordinated Universal Time,世界協(xié)調(diào)時)亦即格林威治天文時間牵舱,世界標準時間串绩。在中國為UTC+8。DST(Daylight Saving Time)即夏令時芜壁。

時間戳(timestamp)的方式:通常來說礁凡,時間戳表示的是從1970年1月1日00:00:00開始按秒計算的偏移量。我們運行“type(time.time())”慧妄,返回的是float類型顷牌。返回時間戳方式的函數(shù)主要有time(),clock()等塞淹。

元組(struct_time)方式:struct_time元組共有9個元素窟蓝,返回struct_time的函數(shù)主要有g(shù)mtime(),localtime()饱普,strptime()运挫。

如果大家在學習中遇到困難,想找一個python學習交流環(huán)境套耕,可以加入我們的python圈谁帕,裙號947618024,可領取python學習資料箍铲,會節(jié)約很多時間雇卷,減少很多遇到的難題。

時間格式(時間戳)

time.time()函數(shù)獲取的是Unix時間戳颠猴。

返回的是一個float類型的數(shù)值关划。

importtimet1 =time.time()print(t1,type(t1))123

睡眠 time.sleep

time.sleep(2)# 睡眠2秒1

格式化時間

importtimeprint(time.strftime('%Y-%m-%d %H:%M:%S'))2019-11-2720:49:36%yprint(time.strftime('%y-%m-%d %H:%M:%S'))19-11-2720:50:27%cprint(time.strftime('%c'))WedNov2720:51:2020191234567891011

格式含義備注%a本地(locale)簡化星期名稱%A本地完整星期名稱%b本地簡化月份名稱%B本地完整月份名稱%c本地相應的日期和時間表示%d一個月中的第幾天(01 - 31)%H一天中的第幾個小時(24小時制,00 - 23)%I第幾個小時(12小時制翘瓮,01 - 12)%j一年中的第幾天(001 - 366)%m月份(01 - 12)%M分鐘數(shù)(00 - 59)%p本地am或者pm的相應符一%S秒(01 - 61)二%U一年中的星期數(shù)贮折。(00 - 53星期天是一個星期的開始。)第一個星期天之前的所有天數(shù)都放在第0周资盅。三%w一個星期中的第幾天(0 - 6调榄,0是星期天)三%W和%U基本相同,不同的是%W以星期一為一個星期的開始呵扛。%x本地相應日期%X本地相應時間%y去掉世紀的年份(00 - 99)%Y完整的年份%Z時區(qū)的名字(如果不存在為空字符)%%‘%’字符

“%p”只有與“%I”配合使用才有效果每庆。

文檔中強調(diào)確實是0 - 61,而不是59今穿,閏年秒占兩秒(汗一個)缤灵。

當使用strptime()函數(shù)時,只有當在這年中的周數(shù)和天數(shù)被確定的時候%U和%W才會被計算。

結(jié)構(gòu)化時間(struct_time)

#結(jié)構(gòu)化時間#localtimestruct_time = time.localtime()print(struct_time)#time.struct_time(tm_year=2020, tm_mon=10, tm_mday=8, tm_hour=15, tm_min=7, tm_sec=53, tm_wday=0, tm_yday=281, tm_isdst=0)print(struct_time.tm_year)#2018#gmtimestruct_time1 = time.gmtime()print(struct_time1)#time.struct_time(tm_year=2020, tm_mon=10, tm_mday=8, tm_hour=15, tm_min=7, tm_sec=53, tm_wday=0, tm_yday=281, tm_isdst=0)print(struct_time1.tm_year)#202012345678910111213

索引(Index)屬性(Attribute)值(Values)0tm_year(年)比如20111tm_mon(月)1 - 122tm_mday(日)1 - 313tm_hour(時)0 - 234tm_min(分)0 - 595tm_sec(秒)0 - 616tm_wday(weekday)0 - 6(0表示周日)7tm_yday(一年中的第幾天)1 - 3668tm_isdst(是否是夏令時)默認為-1

轉(zhuǎn)換

它們之間的轉(zhuǎn)化如圖所示:

要了解更多腮出,請參考time模塊的官方文檔 http://docs.python.org/library/time.html帖鸦。

結(jié)構(gòu)化時間轉(zhuǎn)時間戳mktime

t =time.time()print(t)? ? #1538982828.2859974print(time.localtime(t))? ? #time.struct_time(tm_year=2018, tm_mon=10, tm_mday=8, tm_hour=15, tm_min=13, tm_sec=3, tm_wday=0, tm_yday=281, tm_isdst=0)print(time.gmtime(t))? ? ? #time.struct_time(tm_year=2018, tm_mon=10, tm_mday=8, tm_hour=7, tm_min=13, tm_sec=3, tm_wday=0, tm_yday=281, tm_isdst=0)print(time.mktime(time.localtime()))? ? #1538982958.0123456789

結(jié)構(gòu)化時間轉(zhuǎn)字符串strftime

print(time.strftime('%m/%d/%y %H:%M:%S',time.localtime(3000000000)))#01/24/6513:20:0012

字符串轉(zhuǎn)結(jié)構(gòu)化時間strptime

t =time.time()t =time.strptime('2000-12.31','%Y-%m.%d')print(t)? ? #time.struct_time(tm_year=2000, tm_mon=12, tm_mday=31, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=6, tm_yday=366, tm_isdst=-1)print(time.strftime('%m/%d/%y %H:%M:%S',time.localtime(3000000000)))? ? #01/24/6513:20:00123456

總結(jié)

asctime([tuple])

將時間元組(默認為本地時間)格式轉(zhuǎn)換為字符串形式。接受一個時間元組胚嘲,其默認值為localtime()返回值

clock()

返回當前程序的cpu執(zhí)行時間作儿。unix系統(tǒng)始終返回全部運行時間;而windows從第二次開始都是以第一次調(diào)用此函數(shù)時的時間戳作為基準馋劈,而不是程序開始時間為基準攻锰。不接受參數(shù)。

ctime(seconds)

將時間戳轉(zhuǎn)換為字符串侣滩。接受一個時間戳口注,其默認值為當前時間戳变擒。等價于asctime(localtime(seconds))

print(time.asctime())? #MonOct8 15:21:022018print(time.asctime(time.localtime()))? #MonOct8 15:21:022018print(time.asctime(time.localtime(2000000000)))? #WedMay18 11:33:202033print(time.ctime())? ? #MonOct8 15:21:022018print(time.ctime(2000000000))? #WedMay18 11:33:20203312345

gmtime([seconds])

將時間戳轉(zhuǎn)換為UTC時間元組格式君珠。接受一個浮點型時間戳參數(shù),其默認值為當前時間戳娇斑。

localtime([seconds])

將時間戳轉(zhuǎn)換為本地時間元組格式策添。接受一個浮點型時間戳參數(shù),其默認值為當前時間戳毫缆。

mktime(tuple)

將本地時間元組轉(zhuǎn)換為時間戳唯竹。接受一個時間元組,必選苦丁。

sleep(seconds)

延遲一個時間段浸颓,接受整型、浮點型旺拉。

time()

返回當前時間戳产上,浮點數(shù)形式。不接受參數(shù)

tzset()

改變本地時區(qū)蛾狗。

strptime(string, format)

將指定格式的時間字符串解析為時間元組晋涣,strftime()的逆向過程。接受字符串沉桌,時間格式2個參數(shù)谢鹊,都是必選。示例:

time.strptime('2015-08-05 22:08:06','%Y-%m-%d %X')time.struct_time(tm_year=2015, tm_mon=8, tm_mday=5, tm_hour=22, tm_min=8, tm_sec=612

strftime(format[, tuple])

將時間元組以指定的格式轉(zhuǎn)換為字符串形式留凭。接受字符串格式化串佃扼、時間元組。時間元組為可選蔼夜,默認為localtime()兼耀。示例:

time.strftime("%Y-%m-%d %X", time.localtime())'2011-05-05 16:37:06'

最后多說一句,想學習Python可聯(lián)系小編挎扰,這里有我自己整理的整套python學習資料和路線翠订,想要這些資料的都可以進q裙947618024領取巢音。

本文章素材來源于網(wǎng)絡,如有侵權(quán)請聯(lián)系刪除尽超。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末官撼,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子似谁,更是在濱河造成了極大的恐慌傲绣,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件巩踏,死亡現(xiàn)場離奇詭異秃诵,居然都是意外死亡,警方通過查閱死者的電腦和手機塞琼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進店門菠净,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人彪杉,你說我怎么就攤上這事毅往。” “怎么了派近?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵攀唯,是天一觀的道長。 經(jīng)常有香客問我渴丸,道長侯嘀,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任谱轨,我火速辦了婚禮戒幔,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘碟嘴。我一直安慰自己溪食,他們只是感情好,可當我...
    茶點故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布娜扇。 她就那樣靜靜地躺著错沃,像睡著了一般。 火紅的嫁衣襯著肌膚如雪雀瓢。 梳的紋絲不亂的頭發(fā)上枢析,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天,我揣著相機與錄音刃麸,去河邊找鬼醒叁。 笑死,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的把沼。 我是一名探鬼主播啊易,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼饮睬!你這毒婦竟也來了租谈?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤捆愁,失蹤者是張志新(化名)和其女友劉穎割去,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體昼丑,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡呻逆,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了菩帝。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片咖城。...
    茶點故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖胁附,靈堂內(nèi)的尸體忽然破棺而出酒繁,到底是詐尸還是另有隱情滓彰,我是刑警寧澤控妻,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站揭绑,受9級特大地震影響弓候,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜他匪,卻給世界環(huán)境...
    茶點故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一菇存、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧邦蜜,春花似錦依鸥、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至絮供,卻和暖如春衣吠,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背壤靶。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工缚俏, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓忧换,卻偏偏與公主長得像恬惯,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子亚茬,可洞房花燭夜當晚...
    茶點故事閱讀 42,786評論 2 345