11.2 random模塊
阿新 • • 發佈:2018-03-31
Python random模塊 sample shuffle Random模塊
1.random.random()取(0,1)之間的隨機數
import random
print(random.random())
# 0.8897444362146398
2.random.randint()隨機取整數
print(random.randint(1,8))
# 8
3.random.coice()
print(random.choice("hello"))
# h
print(random.choice([‘qw‘,1,‘i‘]))
# 1
4.random.sample()隨機取樣函數
print(random.sample([‘123‘,‘ooo‘,1,‘h‘],2)) # [‘123‘, 1] 隨機取特定個 print(type(random.sample("123ooo1h",2))) print(random.sample("123ooo1h",2))
5.random.randrange()取特定範圍和間距的值
print(random.randrange(12,15))
# 12 包含12,但不包含15
print(random.randrange(1,10,2)) #以2為間隔
# 7
6.random.shuffle() 洗牌打亂函數
#print(random.shuffle([1,2,3,4,5])) 錯錯錯 list = [20, 16, 10, 5]; print(random.shuffle(list)) #洗牌方法,特別註意:沒有返回值 # None print(list) # [16, 10, 5, 20] # 新手在使用此函數時可能會出現一些錯誤,如下: # import random # a=[1,2,3,4,5,6] # print(random.shuffle(a)) # 使用此方法會出現None結果,原因是random.shuffle() 是用來打亂列表元素的,沒有返回值,所以不能用print(random.shuffle(a))來輸出打印打亂後的序列。
7.random.uniform()生成隨機浮點數
print(random.uniform(2,8))
# 3.8047650948735487
print(random.uniform(10,1)) #random.uniform()生成隨機浮點數,c:a<=c<=b
# 3.4613509038118613
8.應用:隨機生成驗證碼
def auth_code(): code1="" samp=‘‘.join(random.sample("abcdefghijklmnopqrstuvwxyz1234567890",5)) code1=code1+str(samp) print(type(code1)) print(code1) auth_code() #kvbsf
11.2 random模塊