1.time模塊
import time
# 獲取當前時間的時間戳,以s爲單位
timestamp = time.time()
print(timestamp, type(timestamp))
# 輸出1583127227.7372458 <class 'float'>
# 將時間戳轉換爲UTC時間
g = time.gmtime(timestamp)
print(g)
# 輸出 time.struct_time(tm_year=2020, tm_mon=3, tm_mday=2, tm_hour=5, tm_min=33, tm_sec=47, tm_wday=0, tm_yday=62, tm_isdst=0)
# 將時間戳轉換成本地時間
l = time.localtime(timestamp)
print(l)
# 輸出 time.struct_time(tm_year=2020, tm_mon=3, tm_mday=2, tm_hour=13, tm_min=33, tm_sec=47, tm_wday=0, tm_yday=62, tm_isdst=0)
# 將UTC時間轉換成時間戳
timestamp2 = time.mktime(g)
print(timestamp2)
# 輸出 1583098427.0
# 將本地時間轉換成時間戳
timestamp3 = time.mktime(l)
print(timestamp3)
# 輸出 1583127227.0
# 將特定時間轉換成時間戳
timestamp4 = time.mktime((2020, 3, 2, 13, 20, 47, 0, 62, 0))
# 參數解釋: 2020年3月2日13點20分47秒,0代表星期一,是今年的第62天,0代表夏令時
print(timestamp4)
# 輸出 1583126447.0
# 將時間戳可視化
timestamp5 = time.ctime(timestamp4)
print(timestamp5)
# 輸出 Mon Mar 2 13:20:47 2020
# 將時間元組轉換成時間字符串
s = time.strftime("%Y:%m:%d %H:%M:%S", l)
print(s) # 輸出 2020:03:02 13:44:25
# 將時間字符串轉換成時間元組
p = time.strptime("2020-3-2 13:20:45","%Y-%m-%d %H:%M:%S")
print(p)
# 輸出 time.struct_time(tm_year=2020, tm_mon=3, tm_mday=2, tm_hour=13, tm_min=20, tm_sec=45, tm_wday=0, tm_yday=62, tm_isdst=-1)
# 使程序進入休眠狀態 5秒
print(time.time()) # 輸出1583128091.2465198
time.sleep(5)
print(time.time()) # 輸出1583128096.24725
2.datatime模塊
import datetime
# 獲取當前時間
currentTime = datetime.datetime.now()
print(currentTime, type(currentTime)) # 輸出 2020-03-02 13:52:35.584804 <class 'datetime.datetime'>
# 將指定時間轉換成時間字符串
timeStr = currentTime.strftime('%Y-%m-%d')
print(timeStr, type(timeStr)) # 輸出 2020-03-02 <class 'str'>
# 根據時間元組獲取時間
currentTime1 = datetime.datetime(2020, 3, 2, 13, 52, 35, 584804)
print(currentTime1, type(currentTime1)) # 輸出 2020-03-02 13:52:35.584804 <class 'datetime.datetime'>
# 把時間字符串轉換成時間
currentTime2 = datetime.datetime.strptime(timeStr, '%Y-%m-%d')
print(currentTime2, type(currentTime2)) # 輸出 2020-03-02 00:00:00 <class 'datetime.datetime'>
3.calendar
import calendar
# 獲取指定年和月日曆形式
print(calendar.month(2020, 3))
'''輸出:
March 2020
Mo Tu We Th Fr Sa Su
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
'''
# 二維列表形式展現
print(calendar.monthcalendar(2020, 3))
# 輸出 [[0, 0, 0, 0, 0, 0, 1], [2, 3, 4, 5, 6, 7, 8], [9, 10, 11, 12, 13, 14, 15], [16, 17, 18, 19, 20, 21, 22], [23, 24, 25, 26, 27, 28, 29], [30, 31, 0, 0, 0, 0, 0]]
# 年份區間段裏, 有幾個閏年
print(calendar.leapdays(2000, 2020)) # 輸出 5
# 指定月份第一天是周幾,一共有多少天
print(calendar.monthrange(2020, 3)) # 輸出 (6, 31) 6:表示週日 因爲程序是從0開始計算的
# 判斷指定日期是星期幾
print(calendar.weekday(2020, 3, 2)) # 輸出0 說明是星期一
# 查看一年的日曆
print(calendar.calendar(2020))
'''輸出
2020
January February March
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
1 2 3 4 5 1 2 1
6 7 8 9 10 11 12 3 4 5 6 7 8 9 2 3 4 5 6 7 8
13 14 15 16 17 18 19 10 11 12 13 14 15 16 9 10 11 12 13 14 15
20 21 22 23 24 25 26 17 18 19 20 21 22 23 16 17 18 19 20 21 22
27 28 29 30 31 24 25 26 27 28 29 23 24 25 26 27 28 29
30 31
April May June
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
1 2 3 4 5 1 2 3 1 2 3 4 5 6 7
6 7 8 9 10 11 12 4 5 6 7 8 9 10 8 9 10 11 12 13 14
13 14 15 16 17 18 19 11 12 13 14 15 16 17 15 16 17 18 19 20 21
20 21 22 23 24 25 26 18 19 20 21 22 23 24 22 23 24 25 26 27 28
27 28 29 30 25 26 27 28 29 30 31 29 30
July August September
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
1 2 3 4 5 1 2 1 2 3 4 5 6
6 7 8 9 10 11 12 3 4 5 6 7 8 9 7 8 9 10 11 12 13
13 14 15 16 17 18 19 10 11 12 13 14 15 16 14 15 16 17 18 19 20
20 21 22 23 24 25 26 17 18 19 20 21 22 23 21 22 23 24 25 26 27
27 28 29 30 31 24 25 26 27 28 29 30 28 29 30
31
October November December
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
1 2 3 4 1 1 2 3 4 5 6
5 6 7 8 9 10 11 2 3 4 5 6 7 8 7 8 9 10 11 12 13
12 13 14 15 16 17 18 9 10 11 12 13 14 15 14 15 16 17 18 19 20
19 20 21 22 23 24 25 16 17 18 19 20 21 22 21 22 23 24 25 26 27
26 27 28 29 30 31 23 24 25 26 27 28 29 28 29 30 31
30
'''