主要内容 #
- random包的常用函数:choice() choices()
1. random包的常用函数:choice() #
choice()方法从指定序列中返回一个随机选择的元素。
该序列可以是字符串,数列,列表,元组或任何其他种类的序列。
语法如下:
random.choice(sequence)
参数说明:
sequence: 必须参数,比如列表,元组,数列,字符串的序列。
功能:从序列中随机返回一个元素。
例如:
import random #一定要import random模块
print(random.choice([1, 2, 3, 9])) # 返回列表[1,2,3,9]中的随机元素
print(random.choice('dashima')) #返回字符串'dashima'中的随机字符
2. random包的常用函数:choices() #
choices()方法返回一个列表,其中包含从指定序列中
有放回随机选择的元素。
语法如下:
random.choices(sequence, weights, cum_weights, k)
参数说明:
sequence: 必须参数,比如列表,元组,数字范围,字符串的序列
weights: 非必须参数,列表中每个元素的选择可能性,默认None
cum_weights: 非必须参数,列表中每个元素的累积选择可能性,默认 为None
k: 定义返回列表长度的整数,默认为1
功能:从序列中随机返回
k个元素的列表
注:weights和cum_weights只能选一个,方法是一样的
例如,以下程序使用weights的方法:
import random #一定要import random模块
my_list = ['apple', 'banana', 'cherry']
# 从列表返回元素构成10个元素的列表,且原列表中第一个元素的权重是其他的10倍
randlist = random.choices(my_list, weights=[10, 1, 1], k=10)
print(randlist)
以下程序使用cum_weights的方法:
import random #一定要import random模块
my_list = ['apple', 'banana', 'cherry']
# 从列表返回元素构成10个元素的列表,且原列表中第一个元素的权重是其他的10倍
randlist = random.choices(my_list, cum_weights=[10, 11, 12], k=10)
print(randlist)
3. 小结 #
choice()方法从指定序列中返回一个随机选择的元素
choices()方法返回一个列表,其中包含从指定序列中有放回随机选择的元素。
choice()和choices()区别如下:
OJ训练题 #
1、字符菱形 – ★
2、数字放大 – ★
3、统计数 – ★
4、集福卡 – ★★
5、字符串解压 – ★★★