random模塊能夠很容易生成隨機數和隨機字符串。python
random.randint(1, 100) # 1-100之間取一個隨機數 random.randrange(1, 100) # 1-100之間取一個隨機數
randint&randrange區別:randint包含100,randrange不包含100!!!git
random.random() # 返回一個隨機浮點數 random.choice('huangisngiisha12131a@!!!') # 返回一個給定數據集合中的隨機字符 random.sample('adwas1231as!@#!as', 4) # 從多個字符中選取特定數量的字符
示例以下:dom
>>> random.random() 0.8102972151157363 >>> random.choice('huangisngiisha12131a@!!!') 'a' >>> random.sample('adwas1231as!@#!as',4) ['@', '!', '1', 's']
string模塊經常使用方法:spa
>>> import string >>> string.digits # 數字字符串 '0123456789' >>> string.ascii_letters # 字母字符串 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' >>> string.ascii_lowercase # 小寫字母字符串 'abcdefghijklmnopqrstuvwxyz' >>> string.ascii_uppercase # 大寫字母字符串 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' >>> string.punctuation # 特殊字符 '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
生成隨機字符串:code
>>> import string >>> s = string.ascii_lowercase + string.digits >>> s 'abcdefghijklmnopqrstuvwxyz0123456789' >>> random.sample(s, 5) ['p', 'c', '3', 'l', 'y'] >>> ''.join(random.sample(s,5)) '1lngp'
shuffle方法將序列的全部元素隨機排序blog
>>> li = list(range(20)) >>> random.shuffle(li) # 打亂排序 >>> li [5, 1, 4, 6, 18, 10, 9, 2, 8, 7, 16, 17, 15, 12, 14, 13, 0, 11, 19, 3]