Python中的random函數(shù)實例詳解
Python中的random函數(shù)
random模塊提供生成偽隨機數(shù)的函數(shù),在使用時需要導入random模塊
1. random.random()
最基本的隨機函數(shù),返回一個[0.0,1.0)之間的隨機小數(shù)
2.random.uniform(a,b)
在指定范圍內生成隨機小數(shù),兩個參數(shù)其中一個是上限,一個是下限。如果a > b,則生成的隨機數(shù)n: b <= n <= a;如果 a <b, 則 a <= n <= b
3.random.randint(m,n)
用于生成一個指定范圍內的整數(shù)。其中參數(shù)a是下限,參數(shù)b是上限,生成的隨機數(shù)n: a <= n <= b
4.random.choice(sequence)
從序列中獲取一個隨機元素,list, tuple, 字符串都屬于sequence。
5.random.sample(sequence,count)
從指定序列中獲取指定個數(shù)的隨機元素。sample函數(shù)不會修改原有序列。
6.random.randrange([start], stop[, step])
從指定范圍內,按指定基數(shù)遞增的集合中獲取一個隨機數(shù)。
7.random.shuffle(list)
將一個列表內的元素順序打亂,隨機排列
隨機生成6位驗證碼
要求:每個字符可以是大寫字母、小寫字母或數(shù)字,有且只能是這三種類型中的一種。
思路:
大寫字母、小寫字母或數(shù)字對應的ASCII表chr()函數(shù)擅長利用random函數(shù)

由圖可知:
字符0-9對應的是48-57
字符A-Z對應的是65-90
字符A-Z對應的是97-122
import random
list5=[]
for i in range(0,2):
list5.append(random.sample([chr(random.randint(65,90)),
chr(random.randint(48,57)),chr(random.randint(97,122))],3))
str5=''.join(list5[0]+list5[1])
print("生成的驗證碼為:"+str5)因為要生成6個隨機數(shù),但是生成的類型是三種,所以可以用random.sample()函數(shù)(得出的是一個列表),讓其循環(huán)兩次,此時得出來的是兩個列表,可以用+進行拼接,然后用join()函數(shù)將其轉化為字符串的類型。(轉化為字符串類型是為了好看美觀)
若使用random.choice()函數(shù)的話,需要循環(huán)6次,但是不用使用列表拼接了
import random
list5=[]
for i in range(0,6):
list5.append(random.choice([chr(random.randint(65,90)),
chr(random.randint(48,57)),chr(random.randint(97,122))]))
str5=''.join(list5)
print("生成的驗證碼為:"+str5)結語:這是我目前想到最簡便的方法啦,如果大家有好的想法,還望不吝賜教~~
到此這篇關于Python中的random函數(shù)的文章就介紹到這了,更多相關Python中的random函數(shù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
詳解python中靜態(tài)方法staticmethod用法
本文主要介紹了python中靜態(tài)方法staticmethod用法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-07-07

