我需要将 25 个整数的随机列表变成 5 个 block ,每 block 5 个,分布在 5 个不同的行上。
我找到了一种将列表分成 5 个 block 的方法,但我不确定如何将它们分成 5 个不同的行。
import random
def fill(nx, x, y):
lx = []
j = 0
while (j < nx):
r = random.randint(x, y)
if r not in lx:
lx.append(r)
j = j + 1
return lx
def chunks(l, n):
for i in range(0, len(l), n):
yield l[i:i + n]
def display(lx):
lx = list(chunks(lx, 5))
print(lx)
n = 25
a = 10
b = 50
# myList = []
myList = fill(n, a, b)
display(myList)
这只是获取 5 的 block 的代码。我知道 lx.split 不起作用,因为它是一个列表,我不能使用\逐行分割它们。所以我不确定如何将 5 个 block 放到 5 个单独的行上。 除非我错过了它,否则我的(可能重复的)和另一个问题之间的区别是,我已经生成了一个随机数列表,而不是尝试列出所有数字,我将 25 分成分成 5 的 block 不同的线路。
最佳答案
您可以遍历 block 列表并打印出每个 block :
for chunk in chunks:
print(chunk)
打印函数每次调用时都会自动插入换行符。
关于python - 如何使用函数将 25 的列表变成 5 个 block ,每 block 5 个,共 5 个单独的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55661518/