初學者python筆記(time模塊、random模塊)

本篇主要是關於Python中的time模塊和random模塊的內容,這兩個模塊的常見用法也都有所舉例

time模塊

時間戳:

從1970年1月1日(Unix誕生時間)開始算起的所有秒數

print(time.time())	#表示輸出當前的秒數
兩種結構化時間:

返回值分別是年,月,日,時,分,秒,星期,一年的第幾天

  1. time.localtime() (表示輸出當前的時間)
import time

t = time.localtime()  #獲取當前時間

傳入參數:

#傳入對應的參數可以取出對應的時間值,格式爲變量名.參數名
#如取下取出當前時間的全部信息:
print('當前時間爲:{}年{}月{}日{}時{}分{}秒,本年的第{}天'.format(
    t.tm_year, t.tm_mon, t.tm_mday, t.tm_hour, t.tm_min, t.tm_sec, t.tm_yday))
  1. time.gmtime()(根據時區來分的結構化時間)

  2. 將時間戳轉換成結構化時間:time.time()
    如,

import time
print(time.localtime(time.time()))  #參數爲自定義的秒數

結果:
time.struct_time(tm_year=2020, tm_mon=3, tm_mday=8, tm_hour=23, tm_min=54, tm_sec=54, tm_wday=6, tm_yday=68, tm_isdst=0)

  1. 將結構化時間轉換成時間戳:time.mktime()
    如,
import time
print(time.mktime(time.localtime()))  #參數爲對應的結構化時間

結果:
1583682873.0

  1. 輸出標準格式的時間
import time
print(time.strftime("%Y-%M-%D %X",time.localtime()))

結果:
2020-54-03/08/20 23:54:10

  1. 將字符串時間轉換成結構化時間
import time
print(time.strptime("2020:3:8:21:57:36", "%Y:%m:%d:%X"))

結果:
time.struct_time(tm_year=2020, tm_mon=3, tm_mday=8, tm_hour=21, tm_min=57, tm_sec=36, tm_wday=6, tm_yday=68, tm_isdst=-1)

  1. 方便又直觀的時間(兩個方法基本相同)
import time
print(time.asctime())
print(time.ctime())

結果:
Sun Mar 8 23:53:24 2020
Sun Mar 8 23:53:24 2020

  1. 最直觀的時間
import datetime
print(datetime.datetime.now())

結果:
2020-03-08 23:52:49.954184

random模塊

說白了就是隨機模塊,得到隨機數,或者隨機的其他元素
import random
print(random.random())  #一個0到1的隨機浮點數

print(random.randint(1,5))  #輸出一個1到5的隨機數

print(random.randrange(1,5))  #1到4的隨機數(randrange少用)

print(random.choice([520,13,14]))  #從幾個元素中選擇1個(傳入的參數是一個列表,勿忘中括號)

a,b = random.sample([520,13,14],2)  #從幾個元素中選擇2個,第二個參數爲需要選的個數
print(a,b)

print(random.uniform(1,5))  #從1到5範圍的浮點數

ret = [1,2,3,4,5]
random.shuffle(ret)  #將順序打亂
print(ret)

運行結果:
0.12082253858819325
1
3
13
13 520
1.295247508908592
[1, 4, 2, 5, 3]

寫一個生成隨機驗證碼的函數
import random

def code():
    ret=''
    for i in range(4):  #遍歷4次,得到4位的驗證碼
        num = random.randint(0,9)  #0到9的隨機數
        alf = chr(random.randint(65,122))  #傳入ASCII碼,轉成對應字符,這裏是大小寫字母的ASCII碼
        s = str(random.choice([num,alf]))  #從字母和數字中選擇一個,再轉成字符串類型
        ret+=s  #字符串拼接
    return ret  #返回拼接好的字符串
print(code())  #調用函數,輸出返回值

輸出當前執行文件的絕對路徑:
print(__file__)

運行結果:
572Y

好了,time、random這兩個非常常用的模塊的基本功能和用法就總結完了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章