#(1)随機小數
import random
print(random.random()) #随機大于0 且小于1 之間的小數
'''
0.9441832228391154
'''
print(random.uniform(0,9)) #随機一個大于0小于9的小數,“0”為下限,“9”是上限
'''結果:
1.646583891572416
'''
#(2)随機整數
print(random.randint(1,5)) #随機一個大于等于1且小于等于5的整數
'''結果:
5
'''
print random.randint(12,20) #生成的随機數a: 12 <= a =< 20
print random.randint(12,20) #生成的随機數a: 結果永遠是20
print random.randint(12,20) #該語句是錯誤的
print(random.randrange(1,10,2)) #随機一個大于等于1且小于等于10之間的奇數,其中2表示遞增基數
'''結果:
3
'''
#(3)随機傳回
print(random.choice(['123','abc',52,[1,2]])) #随機傳回參數清單中任意一個元素
'''結果:
abc
'''
print(random.sample(['123','abc',52,[1,2]],2)) #随機傳回參數清單中任意兩個元素,參數二指定傳回的數量
'''結果:
['123', 52]
'''
#(4)打亂清單順序
lis = [1,2,5,7,9,10]
random.shuffle(lis)
print(lis)
'''結果:
[2, 1, 10, 5, 9, 7]
'''
(5)驗證碼生成器
import random
def random_num():
code = ''
for i in range(4):
ran1 = random.randint(0,9)
ran2 = chr(random.randint(65,90))
add = random.choice([ran1,ran2])
code = ''.join([code,str(add)])
return code
rand_n = random_num()
print(rand_n)
随機字元:
>>> import random
>>> random.choice('abcdefg%^*f')
'd'
多個字元中選取特定數量的字元:
>>> import random
random.sample('abcdefghij',3)
['a', 'd', 'b']
多個字元中選取特定數量的字元組成新字元串:
>>> import random
>>> import string
>>> string.join(random.sample(['a','b','c','d','e','f','g','h','i','j'], 3)).r
eplace(" ","")
'fih'
随機選取字元串:
>>> import random
>>> random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] )
'lemon'
洗牌:
>>> import random
>>> items = [1, 2, 3, 4, 5, 6]
>>> random.shuffle(items)
>>> items
[3, 2, 5, 6, 4, 1]