摘要:中提供了一個和的模塊可以用來做格式化日期和時間的。格式化日期通過模塊中方法來格式化日期函數接收時間元組并返回以可讀字符串表示薪資的時間格式的話由參數決定。每日寬度間隔為字符每行的長度為是每星期的行數。
我們可以通過學習在Python中對日期時間的處理,可以在快速的完成工作,比如:
將日期時間作為日志信息的內容輸入
計算某一個功能的執行時間
用日期命名一個文件的名稱
記錄或者展示文件的發布或修改時間
其他工作
在Python的程序可以使用很多的方式處理日期和時間,轉換日期格式是一個常見的功能。Python中提供了一個time和calender的模塊可以用來做格式化日期和時間的。時間間隔都是以秒為單位的浮點小數。
在電腦中的時間都是由CPU儲存,所以一般呢也叫做CPU時間, cpu時間是計算從1970年1月1日0點0分到目前這個時間點所經歷的的秒數來表示,同時又可以稱為時間戳。
1.time模塊
1.1導入time模塊
首先使用import導入time模塊
1.2查看時間戳
使用time.time函數查看當前的時間戳為多少,time.time的作用是返回當前時間的時間戳
1.3返回當地時間
使用time.localtime函數,將當前時間戳返回為本地的時間,返回的參數有9個:
序號屬性字段值0Tm_year4位數年20081tm_mon月1-122tm_mday日1-313tm_hour小時0-234tm_min分鐘0-595tm_sec秒0-61(60或61 是閏秒)6tm_wday一周的第幾日0-6(0為周一)7tm_yday一年的第幾日1-365(儒略歷)8tm_isdst夏令時-1,0,1 -1是決定是否為夏令時的旗幟
可以通過這9個返回的參數判斷當前的時間
1.4暫停代碼運行時間
time.sleep暫停代碼的運行時間,time.sleep函數的作用是推遲調用線程的運行,可以通過參數Secs指秒數,表示進程掛起的時間。
1.5計算時間點
函數time.clock是以浮點數計算的秒數返回當前的CPU時間。這個函數在不同的系統上的含義也是不同的, 在UNIX系統上,它返回的是"進程時間",它是用秒表示的浮點數(時間戳)。而在WINDOWS中,第一次調用,返回的是進程運行的實際時間。而第二次之后的調用是自第一次調用以后到現在的運行時間。(實際上是以WIN32上QueryPerformanceCounter為基礎,它比毫秒表示更為精確)
1.6獲取格式化的時間
我們可以根據需求選取各種格式,但是最簡單的獲取可讀的時間模式的函數是asctime:
Time.asctime函數接受時間元組并返回一個可讀的形式”5月7日,周天,13點20分26秒,2017年”的24個字符的字符串。參數是9個元素的元組或者通過函數Gmtime或localtime函數返回的時間值。
1.7格式化日期
通過time模塊中strftime方法來格式化日期:
Time.strftime函數接收時間元組,并返回以可讀字符串表示薪資的時間,格式的話由參數format決定。
1.8解析時間
Time.strptime(str,fmt=’%a %b %d %H:%M:%S %Y’)根據fromt的格式把一個時間字符串解析為時間元組。
在Python中有22個時間日期的格式化符號,通過這些符號就可以設置參數format了:
%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)
%a 本地簡化星期名稱
%A 本地完整星期名稱
%b 本地簡化的月份名稱
%B 本地完整的月份名稱
%c 本地相應的日期表示和時間表示
%j 年內的一天(001-366)
%p 本地A.M.或P.M.的等價符
%U 一年中的星期數(00-53)星期天為星期的開始
%w 星期(0-6),星期天為星期的開始
%W 一年中的星期數(00-53)星期一為星期的開始
%x 本地相應的日期表示
%X 本地相應的時間表示
%Z 當前時區的名稱
%% %號本身
2.Calendar模塊
Calendar模塊是與日歷相關的模塊,但也有很廣泛的方法來處理年歷和月歷,例如打印某月的月歷:
使用claendar.month函數生成月份的日歷。
在claendar模塊中有12種函數,是比較常用的:
2.1 calendar.calendar(year,w=2,I=1,c=6,m=3)
返回一個多行字符串格式的year年年歷,3個月為一行,間隔距離為c,每日寬度間隔為w字符,每行長度為21w+18+2c,i是每星期行數
2.2calendar.firstweekday
2.3calendar.isleap(year)
2.4calendar.leapdays(y1,y2)
2.5calendar.month(year,month,w=2,i=1)
返回一個多行字符串格式的year年month月日歷,兩行標題,一周一行。每日寬度間隔為w字符,每行的長度為7*w+6,I是每星期的行數。
2.6calendar.monthcalendar(year,month)
返回一個整數的單層嵌套列表,每個子列表裝載代表一個星期的整數,year年month月外的日期都設為0,范圍內的日子都由該月第幾日表示,從1開始。
2.7 calendar.monthrange(year,month)
返回兩個整數,第一個是該月第一天是星期幾的日期碼,第二個是該月天數的日期碼,天是從0(星期一)到6(星期日);月是從1-12。
2.8calendar.prcal(year,w=2,i=1,c=6)
相當于是print(calendar.calendar(year,w,I,c))
2.9calendar.prmonth(year,month,w=2,i=1)
相當于print(calendar.calendar(year,w,I,c))
2.10 calendar.setfirstweekday(weekday)
設置每周的起碼日期碼。0(星期一)到6(星期日)
2.11 calendar.timegm(tupletime)
和time.gmtime相反:接受一個時間元組形式,返回該時刻的時間戳(1970年后的浮點秒數)
2.12 calendar.weekday(year,month,day)
返回給定日期的日期碼。0(周一)到6(周日),月份為1-12。
3.datetime模塊
Datetime模塊是Python處理日期和時間的標準庫
3.1獲取當前的日期
Datetime.now函數的作用是返回當前日期和時間,返回的類型是datetime
3.2獲取指定日期和時間
如果要指定某個日期和時間呢,我們直接用參數構造一個datetime也是可的:
通過datetime函數,直接輸入年月日時分的參數,來構造一個指定的日期和時間
3.3datetime轉換為timestamp
在計算機中,時間實際上是用數字表示的,我們把1970年1月1日,00:00:00 UTC+00;00時區的時刻成為epoch time,記為0(1970年之前的時間戳為負數),當前時間就是相對于Epoch time的秒數,可以成為timestamp。
可以理解為:
Timestamp = 0 = 1970-1-1 00:00:00 UTC+0:00
拓展知識UTC 和 Epoch time
UTC time,Coordinated Universal Time,世界標準時間又稱為格林尼治時間,與UTCTime對應的是各個時區的localtime,東N區的時間比UTC時間早N個小時因此UTC+N小時,即為東N區的本地時間;而西N區時間比UTC時間玩N個小時,即UTC time – N小時即為西N區的本地時間;中國在東8區,因此比UTC時間早了八個小時,可以以UTC+8進行表示。
Epoch time表示時間開始的七點;是一個特定的時間,不同平臺上的時間點不同,對于Unix而言,epoch time 為1970-01-01 00:00:00 UTC
首先轉換為時間戳格式
將時間戳格式的時間轉換為字符串日期時間
設置時間的格式
3.4 datetime加減
對于日期和時間進行加減實際上呢就是把日期時間datetime往后或者往前計算,得到新的日期時間datetime。加減可以直接運用+和-預算符,不過需要呢導入timedelta這個datetime模塊下的類
在現在的時間加上10個小時的時間
在現在的時間上減去一天的時間
在現在的時間上加上2天12小時的時間
?
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43609.html
摘要:格式化日期首先獲取時間輸出的結果是但是這樣是一連串的數字不是我們想要的結果,我們可以利用模塊的格式化時間的方法來處理用方法,作用是格式化時間戳為本地的時間。 格式化日期 首先獲取時間 import time print(time.time()) 輸出的結果是: 1511495129.260231 但是這樣是一連串的數字不是我們想要的結果,我們可以利用time模塊的格式化時間的方法來處理...
摘要:用了一段時間的開發項目,也是第一次用來開發項目,所有有許多相關的知識點需要總結,本文所介紹的的日期時間處理就是最近用到的,希望對各位有所幫助,也同時作為自己的筆記儲存。提供了等模塊用于處理日期和時間,較為常用的還是模塊。 用了一段時間的django開發web項目,也是第一次用python來開發項目,所有有許多相關的知識點需要總結,本文所介紹的python的日期時間處理就是最近用到的,希...
Python的作用還是比較的廣泛的,在日常生活中,應用范圍也比較的廣泛,比如,我們可以去利用python,以此來獲取年月日等相關的一些信息,具體的內容是什么呢?下面就給大家詳細的解答下。 這次介紹日期數據處理。 用python中的方法對日期數據進行處理,我們可以獲取很多有用的信息,比如年月日,星期,周次,季度等,這里分享工作和數據競賽30余種常用的轉換方法。 1計算日期的年月日時分秒,星...
摘要:項目地址時間和日期可能涉及到不同的時區格式,同時又經常需要作為時間戳保存,有時候還需要進行一些加減操作,因此處理起來通常會因為方法太多而無從下手。中與時間和日期相關的標準庫有個和。 項目地址:https://git.io/pytips 時間和日期可能涉及到不同的時區、格式,同時又經常需要作為時間戳保存,有時候還需要進行一些加減操作,因此處理起來通常會因為方法太多而無從下手。Python...
摘要:對于日期的操作可以說是比較常見的了日期與格式化字符串互轉,日期與時間戳互轉,日期的加減操作等,下面主要介紹下常見的需求場景如何實現基本包引入主要需要引入時間和日期的處理包,后面的基本操作都是基于此獲取當前時間獲取當前時間,有幾種方式 對于日期的操作可以說是比較常見的case了,日期與格式化字符串互轉,日期與時間戳互轉,日期的加減操作等,下面主要介紹下常見的需求場景如何實現 1. 基本...
閱讀 2973·2021-10-27 14:16
閱讀 695·2021-10-13 09:39
閱讀 3669·2021-09-29 09:46
閱讀 2090·2019-08-30 15:54
閱讀 2597·2019-08-30 15:52
閱讀 2994·2019-08-30 15:44
閱讀 1103·2019-08-30 15:44
閱讀 497·2019-08-30 10:51