Python程序:随机创建N个K大小的列表
如果需要随机创建N个大小为K的列表,可以定义一种方法来对值进行洗牌并输出结果。
示例
以下是一个示例:
from random import shuffle
def gen_random_list(my_val, K):
while True:
shuffle(my_val)
yield my_val[:K]
my_list = [12, 45, 76, 32, 45, 88, 99, 0, 1]
print("The list is ")
print(my_list)
K, N = 4, 5
print("The value of K is ")
print(K)
print("The value of N is ")
print(N)
my_result = []
for elem in range(0, N):
my_result.append(next(gen_random_list(my_list, K)))
print("The result is " )
print(my_result)
输出
The list is
[12, 45, 76, 32, 45, 88, 99, 0, 1]
The value of K is
4
The value of N is
5
The result is
[[88, 76, 99, 12], [12, 99, 32, 76], [32, 76, 12, 99], [32, 45, 0, 12], [76, 0, 1, 45]]
解释
-
将需要的程序包导入环境中。
-
定义了名为“gen_random_list”的方法,该方法以一个值和参数“K”作为参数。
-
该方法使用了“shuffle”方法和“yield”运算符以及切片来给出结果。
-
在方法外,定义了一个列表并在控制台上显示。
-
定义K和N的值并在控制台上显示。
-
定义了一个空列表。
-
对0到N之间的范围进行迭代,并调用方法并将结果附加到空列表中。
-
将其作为输出显示在控制台上。