电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

python語言time庫和datetime庫基本使用詳解

瀏覽:112日期:2022-07-01 10:43:34

今天是邊復習邊創作博客的第三天,我今年大二,我們專業開的有這門課程,因為喜歡所以更加認真學習,本以為沒人看呢,看了后臺瀏覽量讓我更加認真創作,這篇博客花了2個半小時的時間,結合自己所學,所思,所想寫作,目的是為了方便喜歡Python的小白學習,也是一種自我鞭策吧!

python語言使用內置time庫和datetime庫來處理日期時間

相關術語的解釋

UTC time Coordinated Universal Time,世界協調時,又稱 格林尼治天文時間、世界標準時間。與UTC time對應的是各個時區的local time,東N區的時間比UTC時間早N個小時,因此UTC time + N小時 即為東N區的本地時間;而西N區時間比UTC時間晚N個小時,即 UTC time - N小時 即為西N區的本地時間; 中國在東8區,因此比UTC時間早8小時,可以以UTC+8進行表示。 epoch time 表示時間開始的起點;它是一個特定的時間,不同平臺上這個時間點的值不太相同,對于Unix而言,epoch time為 1970-01-01 00:00:00 UTC。 timestamp(時間戳) 也稱為Unix時間 或 POSIX時間;它是一種時間表示方式,表示從格林尼治時間1970年1月1日0時0分0秒開始到現在所經過的毫秒數,其值為float類型。 但是有些編程語言的相關方法返回的是秒數(Python就是這樣),這個需要看方法的文檔說明。需要說明的是時間戳是個差值,其值與時區無關。調用庫的三種方式:

以time庫為例,調用其它庫類似

from time import * (*代表time包含所有的時間處理函數,用到某個也可單定義,調用函數時直接使用,比如:clock())import time (調用函數方式,比如:time.clock())import time as t (自定義庫的名稱,調用時方便,比如:t.clock())time庫的主要的三類函數:

以上面第三種庫調用方式舉例

1.時間獲取:t.time();t.ctime();t.gmtime() #每種獲取時間不一樣,根據需求使用2.程序計時:t.clock();t.perf_counter() #使用方式一樣3.時間格式化:t.strftime(format,t);t.strptime(string,format)#format表示要定義的格式,t表示獲取的時間,string表示字符串類型時間 字符串格式化:%y 兩位數的年份表示(00-99) %Y 四位數的年份表示(000-9999) %m 月份(01-12) %d 月內中的一天(0-31) %H 24小時制小時數(0-23) %I 12小時制小時數(01-12) %M 分鐘數(00=59) %S 秒(00-59) 4.程序休眠:t.sleep()

#使用舉例import time as tt0=t.gmtime()print(t0)t1='2020-12-23 19:23:20't2 = t.strptime(t1,'%Y-%m-%d %H:%M:%S')t3 = t.strftime('%y/%m/%d %H:%M:%S')print(t2)print(t3)

打印結果:C:Users86185PycharmProjectsuntitledvenvScriptspython.exe C:/Users/86185/PycharmProjects/untitled/Python復習/hk.pytime.struct_time(tm_year=2020, tm_mon=12, tm_mday=23, tm_hour=12, tm_min=22, tm_sec=39, tm_wday=2, tm_yday=358, tm_isdst=0)time.struct_time(tm_year=2020, tm_mon=12, tm_mday=23, tm_hour=19, tm_min=23, tm_sec=20, tm_wday=2, tm_yday=358, tm_isdst=-1)20/12/23 20:22:39

Process finished with exit code 0

time模塊主要用于時間訪問和轉換,這個模塊提供了各種與時間相關的函數。

方法/屬性 描述 time.altzone 返回與utc時間的時間差,以秒為單位(西區該值為正,東區該值為負)。其表示的是本地DST 時區的偏移量,只有daylight非0時才使用。 time.clock() 返回當前進程所消耗的處理器運行時間秒數(不包括sleep時間),值為小數;該方法Python3.3改成了time.process_time() time.asctime([t]) 將一個tuple或struct_time形式的時間(可以通過gmtime()和localtime()方法獲?。┺D換為一個24個字符的時間字符串,格式為: 'Fri Aug 19 11:14:16 2016'。如果參數t未提供,則取localtime()的返回值作為參數。 time.ctime([secs]) 功能同上,將一個秒數時間戳表示的時間轉換為一個表示當前本地時間的字符串。如果參數secs沒有提供或值為None,則取time()方法的返回值作為默認值。ctime(secs)等價于asctime(localtime(secs)) time.time() 返回時間戳(自1970-1-1 0:00:00 至今所經歷的秒數) time.localtime([secs]) 返回以指定時間戳對應的本地時間的 struct_time對象(可以通過下標,也可以通過 .屬性名 的方式來引用內部屬性)格式 time.localtime(time.time() + n*3600) 返回n個小時后本地時間的 struct_time對象格式(可以用來實現類似crontab的功能) time.gmtime([secs]) 返回指定時間戳對應的utc時間的 struct_time對象格式(與當前本地時間差8個小時) time.gmtime(time.time() + n*3600) 返回n個小時后utc時間的 struct_time對象(可以通過 .屬性名 的方式來引用內部屬性)格式 time.strptime(time_str, time_format_str) 將時間字符串轉換為struct_time時間對象,如:time.strptime(’2017-01-13 17:07’, ’%Y-%m-%d %H:%M’) time.mktime(struct_time_instance) 將struct_time對象實例轉換成時間戳 time.strftime(time_format_str[, struct_time_instance]) 將struct_time對象實例轉換成字符串,如果struct_time_instance不指定則取當前本地時間對應的time_struct對象 datetime庫主要的四類函數:

datetime庫是基于time庫進行了封裝;以import datetime as dt 為datetime庫調用方式

1.date:表示的是日期對象 #dt.date2.time;表示的是時間對象 #dt.time ;一般不用date和time函數,datetime函數包含其功能3.datetime:表示的是日期時間對象#dt.datetime.now()表示獲取當前時間;dt.strftime(format) # 按照 format 進行格式化輸出4.timedelta:主要用于定義計算時間跨度 #t=dt.timedelat(hours=10)表示定義時間跨度是10小時

用分隔符’’’分類展示如下:

import datetime as dtnow = dt.datetime.now() # 獲取當前datetimeprint(now)輸出結果:2019-05-07 16:28:07.198690’’’d = dt.date(2020, 12, 23)print(d)print(’year:’, d.year)print(’month:’, d.month)print(’day:’, d.day)輸出結果:2020-12-23year: 2020month: 12day: 23’’’’’’date1=dt.date(2020,12,23)timedel=dt.timedelta(days=4)#表示時間跨度為4天print(’四天后的日期是:’, date1+timedel)輸出結果:四天后的日期是:2020-12-27’’’

最后配上一段小程序:文本進度條打印程序分析

import timescale = 100 #這個可以隨意設置,看需求print('執行開始'.center(scale//2,’-’))# .center(a,’b’)函數是居中符,這條程序是將“執行開始”居中占字符為scale//2(可看需求自定義),b為填充符starttime = time.clock() #time庫內置函數,第一次使用是開始計時for i in range(scale+1): a = ’*’ * i #將’*’字符隨i的增加而增加 b = ’.’ * (scale - i) #將’.’字符隨‘*’增加而減少,兩個字符總數是scale的初始值數量 c = (i/scale) * 100 #求百分比 t = time.clock()-starttime #計算時間,第二次調用time.clock函數表示計時結束 print('r{:^3.0f}%[{}->{}]{:.2}s'.format(c,a,b,t),end='')#字符格式化,看需求,自己玩就是咋好看咋格式化 time.sleep(0.05) #time.sleep()函數表示讓程序休眠,里面參數是休眠時間根據需求隨意定義print('n'+'執行結束'.center(scale//2,’-’))#同上;'n表示換行打印';'+'連接符,具有連接功能

關于datetime模塊的datetime類會在下面做詳細講解,這里簡單說下time.struct_time。

time.struct_time包含如下屬性:

下標/索引 屬性名稱 描述 0 tm_year 年份,如 2017 1 tm_mon 月份,取值范圍為[1, 12] 2 tm_mday 一個月中的第幾天,取值范圍為[1-31] 3 tm_hour 小時, 取值范圍為[0-23] 4 tm_min 分鐘,取值范圍為[0, 59] 5 tm_sec 秒,取值范圍為[0, 61] 6 tm_wday 一個星期中的第幾天,取值范圍為[0-6],0表示星期一 7 tm_yday 一年中的第幾天,取值范圍為[1, 366] 8 tm_isdst 是否為夏令時,可取值為:0 , 1 或 -1

屬性值的獲取方式有兩種:

可以把它當做一種特殊的有序不可變序列通過 下標/索引 獲取各個元素的值,如t[0] 也可以通過 .屬性名 的方式來獲取各個元素的值,如t.tm_year。

需要說明的是struct_time實例的各個屬性都是只讀的,不可修改。

到此這篇關于python語言time庫和datetime庫基本使用詳解的文章就介紹到這了,更多相關python time庫和datetime庫內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 德州网站开发定制-小程序开发制作-APP软件开发-「两山开发」 | 储能预警-储能消防系统-电池舱自动灭火装置-四川千页科技股份有限公司官网 | 河南道路标志牌_交通路标牌_交通标志牌厂家-郑州路畅交通 | PCB接线端子_栅板式端子_线路板连接器_端子排生产厂家-置恒电气 喷码机,激光喷码打码机,鸡蛋打码机,手持打码机,自动喷码机,一物一码防伪溯源-恒欣瑞达有限公司 假肢-假肢价格-假肢厂家-河南假肢-郑州市力康假肢矫形器有限公司 | 水厂污泥地磅|污泥处理地磅厂家|地磅无人值守称重系统升级改造|地磅自动称重系统维修-河南成辉电子科技有限公司 | 二手Sciex液质联用仪-岛津气质联用仪-二手安捷伦气质联用仪-上海隐智科学仪器有限公司 | 专业的新乡振动筛厂家-振动筛品质保障-环保振动筛价格—新乡市德科筛分机械有限公司 | 环氧树脂地坪_防静电地坪漆_环氧地坪漆涂料厂家-地壹涂料地坪漆 环球电气之家-中国专业电气电子产品行业服务网站! | 顺景erp系统_erp软件_erp软件系统_企业erp管理系统-广东顺景软件科技有限公司 | 闸阀_截止阀_止回阀「生产厂家」-上海卡比阀门有限公司 | 电液推杆生产厂家|电动推杆|液压推杆-扬州唯升机械有限公司 | 多功能真空滤油机_润滑油全自动滤油机_高效真空滤油机价格-重庆润华通驰 | 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 食品无尘净化车间,食品罐装净化车间,净化车间配套风淋室-青岛旭恒洁净技术有限公司 | 广州番禺搬家公司_天河黄埔搬家公司_企业工厂搬迁_日式搬家_广州搬家公司_厚道搬迁搬家公司 | 济南展厅设计施工_数字化展厅策划设计施工公司_山东锐尚文化传播有限公司 | 雨燕360体育免费直播_雨燕360免费NBA直播_NBA篮球高清直播无插件-雨燕360体育直播 | TTCMS自助建站_网站建设_自助建站_免费网站_免费建站_天天向上旗下品牌 | 磁力反应釜,高压釜,实验室反应釜,高温高压反应釜-威海自控反应釜有限公司 | 今日热点_实时热点_奇闻异事_趣闻趣事_灵异事件 - 奇闻事件 | 东莞精密模具加工,精密连接器模具零件,自動機零件,冶工具加工-益久精密 | 沈阳缠绕膜价格_沈阳拉伸膜厂家_沈阳缠绕膜厂家直销 | 外贸网站建设-外贸网站设计制作开发公司-外贸独立站建设【企术】 | 科威信洗净科技,碳氢清洗机,超声波清洗机,真空碳氢清洗机 | 课件导航网_ppt课件_课件模板_课件下载_最新课件资源分享发布平台 | 烟雾净化器-滤筒除尘器-防爆除尘器-除尘器厂家-东莞执信环保科技有限公司 | 乐泰胶水_loctite_乐泰胶_汉高乐泰授权(中国)总代理-鑫华良供应链 | 立式硫化罐-劳保用品硫化罐-厂家直销-山东鑫泰鑫硫化罐厂家 | 导电银胶_LED封装导电银胶_半导体封装导电胶厂家-上海腾烁 | 杭州中策电线|中策电缆|中策电线|杭州中策电缆|杭州中策电缆永通集团有限公司 | 对辊破碎机-液压双辊式,强力双齿辊,四辊破碎机价格_巩义市金联机械设备生产厂家 | 酒吧霸屏软件_酒吧霸屏系统,酒吧微上墙,夜场霸屏软件,酒吧点歌软件,酒吧互动游戏,酒吧大屏幕软件系统下载 | 锂离子电池厂家-山东中信迪生电源 | 精密冲床,高速冲床等冲压设备生产商-常州晋志德压力机厂 | 变位机,焊接变位机,焊接变位器,小型变位机,小型焊接变位机-济南上弘机电设备有限公司 | 黄石东方妇产医院_黄石妇科医院哪家好_黄石无痛人流医院 | 代理记账_公司起名核名_公司注册_工商注册-睿婕实业有限公司 | 热镀锌槽钢|角钢|工字钢|圆钢|H型钢|扁钢|花纹板-天津千百顺钢铁贸易有限公司 | 包装设计公司,产品包装设计|包装制作,包装盒定制厂家-汇包装【官方网站】 | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | 食品质构分析仪-氧化诱导分析仪-瞬态法导热系数仪|热冰百科 |