time 模塊:與時間相關的功能的模塊dom
在 Python 中,時間分爲三種:ide
一、時間戳:是一個時間的表示,根據不一樣的語言,能夠是整數或浮點數,是從1970年1月1日0時0分0秒到如今經歷的秒數spa
二、UTC時間: 又稱爲世界協調時間,以英國的格林尼治天文所在地區的時間做爲參考的時間,也叫作世界標準時間。中國時間是 UTC+8 東八區code
三、localtime:本地時間,又叫時間元組,是一個包含時間內容的普通元組blog
import time print(time.localtime()) # 運行
time.struct_time(tm_year=2018, tm_mon=10, tm_mday=15, tm_hour=14, tm_min=44, tm_sec=34, tm_wday=0, tm_yday=288, tm_isdst=0) # 相應參數 # 索引 內容 屬性 值 # 0 年 tm_year 2015 # 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 60表示閏秒 61保留值 # 6 周幾 tm_wday 0~6 # 7 第幾天 tm_yday 1~366 # 8 夏令時 tm_isdst 0,1,-1(表示夏令時)
時間模塊的屬性索引
# 獲取時間戳 返回浮點型
print(time.time()) # 獲取當地時間 返回的是結構化時間
print(time.localtime()) # 時間戳 轉結構化
print(time.localtime(time.time())) # 結構化 轉時間戳
print(time.mktime(time.localtime())) # 獲取UTC時間 返回的仍是結構化時間 比中國時間少8小時
print(time.gmtime()) # 將獲取的時間轉成指定的格式 僅支持結構化時間
print(time.strftime("%Y-%m-%d %H:%M:%S %p", time.localtime())) # 將格式化字符串的時間轉爲結構化時間 注意: 格式必須匹配
print(time.strptime("2018-10-15 15:00:18", "%Y-%m-%d %H:%M:%S")) # sleep 讓當前進程睡眠一段時間 單位是秒
time.sleep(2) print('over') # 接受時間元組並返回一個可讀的形式爲"Mon Oct 15 15:09:24 2018"的24個字符的字符串。
print(time.asctime()) # 獲取字符串化的當前時間
print(time.ctime())
datetime 模塊:提供日期和時間運算表示的模塊進程
datetime經常使用屬性字符串
import datetime # 獲取當前時間 返回的是格式化字符時間
print(datetime.datetime.now()) # 單獨獲取某個時間 年 月
d = datetime.datetime.now() print(d.year) print(d.day) # 手動指定時間
d2 = datetime.datetime(2018,10,10,10,10,10) print(d2) # 計算兩個時間的差 只能減不能加
print(d - d2) # 替換某個時間
print(d.replace(year=2020)) # 表示時間差的屬性 timedelta
print(datetime.timedelta(days=1)) d = datetime.datetime.now() t1 = datetime.timedelta(days=1) t2 = datetime.timedelta(weeks=1) print(t2 - t1) # 時間差能夠和一個datetime進行加減
print(d + t2)
random 模塊:隨機數模塊event
# random() 獲取0-1之間的隨機小數 # 格式:random.random() # 返回值:隨機0-1之間的小數
print(random.random()) # 運行
0.4549137928915099
# choice() 隨機返回序列中的某個值 # 格式:random.choice(序列) # 返回值:序列中的某個值
l = [str(i)+"haha" for i in range(5)] print(l) rst = random.choice(l) print(rst) # 運行
['0haha', '1haha', '2haha', '3haha', '4haha'] 3haha
# shuffle() 隨機打亂列表 # 格式:random.shuffle(列表) # 返回值:打亂順序以後的列表
l1 = [i for i in range(5)] print(l1) random.shuffle(l1) print(l1) # 運行
[0, 1, 2, 3, 4] [2, 3, 0, 4, 1]
# randint(a,b): 返回一個a到b之間的隨機整數,包含a和b
print(random.randint(0,100)) # 運行
46
# randrange(a,b): 返回一個a到b之間的隨機整數,包含a不包含b
print(random.randrange(0,2)) # 運行
0
# 隨機選指定個數
print(random.sample([1,2,3],2)) # 運行
[2, 3]
實現隨機驗證碼,整型和全大寫字符,可指定長度驗證碼
def make_code(i): res = ""
for j in range(i): # 隨機0到9
num = str(random.randint(0,9)) c = chr(random.randint(65,90)) s = random.choice([num,c]) res += s return res print(make_code(4))