詳解python日期時(shí)間處理
講了很多數(shù)據(jù)容器操作,這篇我們看看時(shí)間的處理。
開(kāi)發(fā)中常用的日期操作有哪些?
- 獲取當(dāng)前時(shí)間
- 獲取系統(tǒng)秒數(shù)(從紀(jì)元時(shí)間開(kāi)始)
- 日期跟秒數(shù)之間轉(zhuǎn)換
- 獲取日歷等
- 日期格式化顯示輸出
這些都非常常見(jiàn)
在python 主要有下面兩個(gè)模塊涵蓋了常用日期處理
import time import calender
我們看看這兩個(gè)模塊。
time 內(nèi)置模塊
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2021/11/10 22:49 下午 # @Author : LeiXueWei # @CSDN/Juejin/Wechat: 雷學(xué)委 # @XueWeiTag: CodingDemo # @File : __init__.py.py # @Project : hello import time # 從19700101 零時(shí)刻開(kāi)始計(jì)算經(jīng)過(guò)多少秒,精確到微秒 ticks = time.time() print("ticks=", ticks) #獲取當(dāng)前時(shí)間 print(time.localtime())
運(yùn)行效果如下:
這個(gè)ticks就是從0時(shí)刻計(jì)算,至今的秒數(shù)累計(jì)。
可以隔一秒運(yùn)行這個(gè)程序,每次ticks值加上1(近似)
指定輸入來(lái)構(gòu)造時(shí)間:
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2021/11/10 22:49 上午 # @Author : LeiXueWei # @CSDN/Juejin/Wechat: 雷學(xué)委 # @XueWeiTag: CodingDemo # @File : createtime.py # @Project : hello import time #fixed time: time.struct_time(tm_year=2021, tm_mon=11, tm_mday=10, tm_hour=22, tm_min=55, tm_sec=11, tm_wday=16, tm_yday=16, tm_isdst=16) fixed = time.struct_time((2021, 11, 10, 22, 55, 11, 16, 16, 16)) print("fixed time:", fixed)
運(yùn)行效果如下:
calender 內(nèi)置模塊
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2021/11/10 22:49 上午 # @Author : LeiXueWei # @CSDN/Juejin/Wechat: 雷學(xué)委 # @XueWeiTag: CodingDemo # @File : calendardemo.py # @Project : hello import calendar cal = calendar.month(2021, 11) print("cal:", cal)
至今輸出一個(gè)月份,這個(gè)在Java的Calendar中也沒(méi)有。太直接了。
日期格式化處理
這里我們使用了time模塊的strftime(str from time):
#第一個(gè)參數(shù)為格式,第二個(gè)參數(shù)為時(shí)間 time.strftime("%Y-%m-%d %H:%M:%S %Z", gmtime))
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2021/11/10 22:49 上午 # @Author : LeiXueWei # @CSDN/Juejin/Wechat: 雷學(xué)委 # @XueWeiTag: CodingDemo # @File : createtime2.py # @Project : hello import time sec = 3600 # 紀(jì)元開(kāi)始后的一個(gè)小時(shí)(GMT 19700101凌晨) # gmtime = time.gmtime(sec) print("gmtime:", gmtime) # GMT print("type:", type(gmtime)) print(time.strftime("%b %d %Y %H:%M:%S", gmtime)) print(time.strftime("%Y-%m-%d %H:%M:%S", gmtime)) print(time.strftime("%Y-%m-%d %H:%M:%S %Z", gmtime)) # 打印日期加上時(shí)區(qū) print("*" * 16) localtime = time.localtime(sec) print("localtime:", localtime) # 本地時(shí)間 print("type:", type(localtime)) print(time.strftime("%b %d %Y %H:%M:%S", localtime)) print(time.strftime("%Y-%m-%d %H:%M:%S", localtime)) print(time.strftime("%Y-%m-%d %H:%M:%S %Z", localtime)) # 打印日期加上時(shí)區(qū) # 試試其他格式 print(time.strftime("%D", localtime)) print(time.strftime("%T", localtime))
稍微解釋一下:
%Y-%m-%d %H:%M:%S %Z 對(duì)應(yīng)的是
年份4位數(shù)-月份-日期 小時(shí):分鐘:秒數(shù) 時(shí)區(qū)信息
%b 則是三個(gè)字母英文輸出月份,比如Jan/Feb 等。
下面是運(yùn)行結(jié)果:
總結(jié)
Python 提供的日期處理都非常簡(jiǎn)單,但是在創(chuàng)建日期方面使用time模塊沒(méi)有那么方便,需要對(duì)應(yīng)元組下標(biāo)才行。
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
python如何在pygame中設(shè)置字體并顯示中文詳解
再簡(jiǎn)單的游戲界面中均涉及文字處理,下面這篇文章主要給大家介紹了關(guān)于python如何在pygame中設(shè)置字體并顯示中文的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-01-01Python的進(jìn)制轉(zhuǎn)換和ASCLL轉(zhuǎn)換你了解嗎
這篇文章主要為大家詳細(xì)介紹了Python的進(jìn)制轉(zhuǎn)換和ASCLL轉(zhuǎn)換,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-02-02Python實(shí)現(xiàn)定時(shí)任務(wù)的九種方案總結(jié)
定時(shí)任務(wù)是編程中常見(jiàn)的需求,它可以按照預(yù)定的時(shí)間表執(zhí)行特定的任務(wù)或操作,在Python中,有多種方法可以實(shí)現(xiàn)定時(shí)任務(wù),下面小編就來(lái)和大家詳細(xì)講講吧2023-11-11Python?Pygame實(shí)戰(zhàn)之打磚塊小游戲
打磚塊最早是由雅達(dá)利公司開(kāi)發(fā)的一款獨(dú)立游戲,也是無(wú)數(shù)人的童年記憶。本文將利用Python中的Pygame模塊制作經(jīng)典的打磚塊游戲,需要的可以參考一下2022-02-02Python用摘要算法生成token及檢驗(yàn)token的示例代碼
這篇文章主要介紹了Python用摘要算法生成token及檢驗(yàn)token的示例代碼,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下2020-12-12使用python批量修改文件名的方法(視頻合并時(shí))
這篇文章主要介紹了視頻合并時(shí)使用python批量修改文件名的方法,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-08-08python re的findall和finditer的區(qū)別詳解
這篇文章主要介紹了python re的findall和finditer的區(qū)別詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11appium+python自動(dòng)化配置(adk、jdk、node.js)
這篇文章主要介紹了appium+python自動(dòng)化配置(adk、jdk、node.js),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11centos 安裝python3.6環(huán)境并配置虛擬環(huán)境的詳細(xì)教程
這篇文章主要介紹了centos-安裝python3.6環(huán)境并配置虛擬環(huán)境的詳細(xì)教程,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2018-02-02