- 描述
datetime是python處理日期和時間的標準庫
- datetime模組中的類
類名功能說明
date
日期物件,常用的屬性有year,month,day
time
時間物件
datetime
日期時間物件,常用的屬性有hour,minute,second,microsecond
datetime_capi
日期時間物件c語言介面
timedelta
時間間隔,即兩個時間點之間的長度
tzinfo
時區資訊物件
- 獲取當前日期和時間
from datetime import datetime
now = datetime.now(
)# 獲取當前datetime
print
(now)
# 輸出結果:2020-01-13 10:32:40.277219
print
(type
(now)
)# 輸出結果:
注:datetime模組包含乙個datetime類
- 獲取指定日期和時間
指定某個日期和時間,可以直接用引數構造乙個datetime
from datetime import datetime
dt = datetime(
2020,1
,24,10
,39)# 用指定日期時間建立datetime
print
(dt)
# 輸出結果:2020-01-24 10:39:00
- datetime轉換為timestamp
在計算機中,時間實際上是用數字表示的,把2023年1月1日 00:00:00 utc + 00:00時區的時刻稱為epoch time,記為0(2023年以前的時間timestamp為負數),當前時間就是相對於epoch time的秒數,稱為timestamp。
timestamp:時間戳可以認為
timestamp =0=
1970-1
-100:
00:00 utc+0:
00
對應的北京時間
timestamp =0=
1970-1
-108:
00:00 utc+8:
00
timestamp的值與時區毫無關係,因為timestamp一旦確定,其utc時間就確定了,轉換到任意時區的時間也是完全確定的。
# datetime型別轉換為timestamp
from datetime import datetime
dt = datetime(
2020,1
,24,10
,39)# 用指定日期時間建立datetime
print
(dt.timestamp())
# 把datetime轉換為timestamp
# 輸出結果:1579833540.0
python的timestamp是乙個浮點數,如果有小數,小數字表示毫秒數
- timestamp轉換為datetime
from datetime import datetime
t =1579833540.0
print
(datetime.fromtimestamp(t)
)# 輸出結果:2020-01-24 10:39:00
timestamp是乙個浮點數,沒有時區的概念,而datetime是由時區的,上述轉換時在timestamp和本地時間做轉換
timestamp也可以直接被轉換到utc標準時區的時間
from datetime import datetime
t =1579833540.0
print
(datetime.fromtimestamp(t)
)# 本地時間
# 輸出結果:2020-01-24 10:39:00
print
(datetime.utcfromtimestamp(t)
)# utc時間
# 輸出結果:2020-01-24 02:39:00
-str轉換為datetime# 通過datetime.strptime()轉換
from datetime import datetime
cday = datetime.strptime(
'2020-1-24 11:01:30'
,'%y-%m-%d %h:%m:%s'
)print
(cday)
# 輸出結果:2020-01-24 11:01:30
print
(type
(cday)
)# 輸出結果:
python中時間日期格式化符號
符號說明
%y兩位數的年份表示(00-99)
%y四位數的年份表示(000-9999)
%m月份(01-12)
%d月內中的一天(0-31)
%h24小時制(0-23)
%m分鐘數(00-59)
%s秒(00-59)
datetime加減
from datetime import datetime, timedelta
now = datetime.now(
)h_now = now + timedelta(hours=10)
d_now = now + timedelta(days=1)
hd_now = now + timedelta(days=
2, hours=12)
print
(h_now)
# 輸出結果:2020-01-13 21:09:48.273027
print
(d_now)
# 輸出結果:2020-01-14 11:12:13.685066
print
(hd_now)
# 輸出結果:2020-01-15 23:12:13.685066
Python常用內建模組
base64是一種用64個字元來表示任意二進位制資料的方法。用記事本開啟exe jpg pdf這些檔案時,我們都會看到一大堆亂碼,因為二進位制檔案包含很多無法顯示和列印的字元,所以,如果要讓記事本這樣的文字處理軟體能處理二進位制資料,就需要乙個二進位製到字串的轉換方法。base64是一種最常見的二進...
python常用內建模組(五)
requests 一 collections 是python內建的乙個集合模組,提供了許多有用的集合類。namedtuple,是乙個函式,用來建立乙個自定義的tuple物件,格式 namedtuple 名稱 屬性list 例如 建立乙個座標為 1,2 的點 from collections impo...
python常用內建模組 collections
1.namedtuple namedtuple是乙個函式,它用來建立乙個自定義的tuple物件,並且規定了tuple元素的個數,並可以用屬性而不是索引來引用tuple的某個元素。這樣一來,我們用namedtuple可以很方便地定義一種資料型別,它具備tuple的不變性,又可以根據屬性來引用,使用十分...