一、针对整数的方法
random.randrange(stop)
random.randrange(start, stop[, step])
>>> import random
>>> print(random.randrange(4)) #返回0~3的随机整数
1
>>> print(random.randrange(1, 9)) #返回1~8的随机整数
4
>>> print(random.randrange(1, 11, 2)) #返回1~10的随机奇数
5
random.randint(a, b)
返回一个随机整数N,a <= N <= b
>>> print(random.randint(1, 10)) #返回[1, 10]的随机整数
9
>>> print(random.randint(-10, -1)) #返回[-10, -1]的随机整数,不能写成random.randint(-1, -10)
-8
二、针对序列的方法
random.choice(seq)
从非空序列中返回一个随机元素,如果序列为空,则引发IndexError
>>> print(random.choice('happy')) #返回一个字符
p
>>> print(random.choice(['apple', 'peach', 'pear'])) #返回列表中一个随机一个元素
apple
>>> print(random.choice(('Bob', 'Jhon', 'Micheal'))) #返回元组中一个随机元素
Jhon
random.choices(population, weight=None, *, cum_weight=None, k=1)
从可替代的population序列中随机取出k个元素组成列表,返回该列表。weight是相对权重序列,cum_weight是累计权重
>>> print(random.choices(['red', 'yellow','green', 'blue', 'black', 'pink', 'purple', 'white'], k=4))
['white', 'red', 'purple', 'white']
>>> print(random.choices(['apple', 'peach', 'pear'], [1, 2, 3], k=4))
['pear', 'pear', 'peach', 'pear']
>>> print(random.choices(['apple', 'peach', 'pear'], [6, 12, 2], k=4))
['peach', 'pear', 'apple', 'peach']
random.shuffle(x [,random])
重新排列序列(洗牌)
>>> seq = ['1','2','3', '4' ]
>>> random.shuffle(seq) #列表重新排序
>>> print(seq)
['2', '4', '1', '3']
>>>
random.sample(population, k)
从序列population中随机抽取K个不重复的元素组成的新队列,用于不可替换的随机抽样,不破坏原有列表
>>> print(random.sample(['a', 'b', 'c', 'd', 'e', '1', '2', '3'], 2)) #列表中随机抽取2个元素组成新的列表
['b', 'a']
>>> print(''.join(random.sample("happyday", 4)))
phya