Python日期時間模塊
在本文中,我們將查看PythondateTime模塊。我們將學習如何創建當前時間,如何計算時間間隔,以及如何產生時間差異。根據Python文檔 :
pythondatetime模塊提供了以簡單和複雜的方式操作日期和時間的類。
因此,Pythondatetime模塊包含幾個類。讓我們逐一討論。
Pythondatetime模塊:datetime.datetime
讓我們討論如何使用DateTime.datetime班級,等級。
Datetime.datetime.今天()
datetime.datetime.today() 今天的日期。參見下面的示例。
<code>>>> print datetime.datetime.today()
2018–08–19 22:49:24.169000/<code>
Datetime.Now()
datetime.datetime.now() 顯示的輸出與datetime.datetime.today() .
<code>>>> print datetime.datetime.now()
2018–08–19 22:49:51.541000/<code>
但是如果你提供時區datetime.datetime.now()返回指定時區的當前時間。
如果在字符串中提供時區信息,則解釋器將引發錯誤。
datetime.strptime(Date_String,Format)
這個datetime.strptime(date_string, format)取走date_string,將其格式化為參數,並返回datetime對象。如下所示。
stftime(格式)
這個strftime(format)控件生成格式化日期。datetime對象。
<code>>>> print datetime.datetime.now().strftime(“%d %b, %Y”)
22 Aug, 2018/<code>
時間()
此方法將秒轉換為以下形式的24個字符串:“Mon Jun 20 23:21:05 1994”。
<code>>>> datetime.datetime.now().ctime()
‘Thu Aug 23 00:07:28 2018’
>>>/<code>
等格式()
isoformat()返回一個字符串,表示ISO 8601格式的日期‘YYYYY-MM-DD’。例如:
日期時間
<code>>>> datetime.datetime.now().isoformat()
‘2018–08–23T00:11:32.393000’
>>>/<code>
日期時間
現在我們來討論一下datetime.date班級,等級。
日期時間。今天()
此方法返回今天的日期。例如:
<code>>>> import datetime
>>> print datetime.datetime.today()
2018–08–23 23:18:22.044000
>>>/<code>
從時間戳()
此方法將Unix郵票或紀元轉換為日期。例如:
datetime.timeDelta
datetime.timedelta 用於在兩個日期或時間之間創建時間差。
這個datetime.timedelta 類接受關鍵字參數。根據Python文檔 :
所有參數都是可選的,默認為0。參數可以是整數、長參數或浮動參數,也可以是正的或負的。內部只存儲天、秒和微秒。參數被轉換為這些單位。
讓我們為Delta做不同的練習。
讓我們創建一個10秒的時間增量。
<code>>>> import datetime
>>> delta1=datetime.timedelta(seconds=10)/<code>
接下來,我們將從當前時間減去時間增量。
現在,我們將時間增量添加到當前時間。
讓我們再做一次更完整的練習。
- 創建一個Unix時間意味著10天前的一個時代。
- 10天后創建一個Unix時間。
讓我們一步地走
<code>>>> import datetime
>>> import time/<code>
為時間差創建兩個三角洲,一個用於10天前,另一個用於10天后。
<code>>>> delta1=datetime.timedelta(days=10)
>>> delta2=datetime.timedelta(days=-10)/<code>
將兩個三角洲添加到當前時間。
為了刪除浮點數的使用,strftime方法已被使用。
<code>>>> date1 = ten_days_ago.strftime( “%Y-%m-%d %H:%M:%S” )
>>> date1
‘2018–08–14 23:09:04’/<code>
當我們使用該模塊時,Unix時間或時代已經創建。
Python日曆模塊
現在,我們將使用日曆模塊打印特定月份的日曆。為了打印一個特定的月份,calendar.month(year, month) 將要如下圖所示。
讓我們打印2018年的日曆。
<code>>>> import calendar
>>> print calendar.calendar(2018)/<code>
考慮一下你是否想知道某個特定的年份是否是閏年。你可以用calendar.isleap(year) .參見下面的示例。
考慮一下,如果您想要找出在y1到y2範圍內的閏年數。參見下面的示例。
去年不包括在範圍內。
考慮到你想知道在不同國家的時間。默認情況下,與時間相關的模塊根據時區返回時間。讓我們看看如何從不同的國家獲得時間。
<code>>>> import datetime
>>> import pytz/<code>
讓我們檢查一下“美國/東方”的當前時間。
<code>>>> print datetime.datetime.now(pytz.timezone(‘US/Eastern’))
2018–08–25 14:25:34.712000–04:00
>>>/<code>
讓我們看看目前在印度加爾各答的時間。
<code>>>> print datetime.datetime.now(pytz.timezone(‘Asia/Kolkata’))
2018–08–25 23:56:40.564000+05:30/<code>
如果不知道時區的名稱,則可以使用國家名稱搜索時區。
<code>>>> pytz.country_timezones.get(“NZ”)
[u’Pacific/Auckland’, u’Pacific/Chatham’]
>>>/<code>
新西蘭有兩個時區。
讓我們看看印度時區的名稱。
<code>>>> pytz.country_timezones.get(“IN”)
[u’Asia/Kolkata’]
>>>
pytz.country_timezones.keys()/<code>
上一行返回國家縮寫列表,如下所示。
[U‘BD’,u‘Be’,u‘BF’,u‘BG’,u‘ba’,u‘BB’,u‘WF’,u‘BL’,u‘BM’,u‘bb’,u‘BO’,u‘BH’,u‘bi’,u‘bj’,u‘BT’,u‘jm’,u‘bw’,u‘ws’,u‘bq’,u‘br’,u‘bs’,u‘je’,u‘by’等等。).]
如果您想確認“in”是否屬於印度或其他國家(如伊朗),您可以使用pytz.country_names.get( ‘IN’ ) .
<code>>>> print (pytz.country_names.get( ‘IN’ ) )
#Prints "India"/<code>
如果要檢查所有國家及其縮寫,請使用以下代碼:
<code>>>> for each in pytz.country_names.iteritems():
… print each
…
(u’BD’, u’Bangladesh’)
(u’BE’, u’Belgium’)
(u’BF’, u’Burkina Faso’)
(u’BG’, u’Bulgaria’)/<code>
我希望你喜歡這篇文章!
閱讀更多 愛編程的大美妞 的文章