使用二维列表和while循环创建乘法选项卡

2024-04-20 10:37:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须使用三个while循环来创建乘法表的2D列表。 指令不允许我创建另一个列表。在

我可以在一个列表中创建两个嵌套列表。 我主要关心的是如何将两个嵌套列表相乘并收集结果。我希望能在这里得到一些建议。在

MT = [[],[]]
num1 = 0
num2 = 0

while num1 < 10:
    num1 = num1 + 1
    MT[0].append(num1)
    while num2 < 10:
        num2 = num2 + 1
        MT[1].append(num2)

print(MT)

我希望得到这样的结果:

enter image description here


Tags: image列表here指令description建议printenter
2条回答

如果你需要用while循环(如你所说)而不是for循环来填充乘法表,你可以这样做:

MT = [[] for i in range(11)]
MT[0].append('X')
num1 = 0
num2 = 0

# fill the multiplication table
while num1 < 10:
  num1 = num1 + 1
  MT[0].append(num1)
  MT[num1].append(num1)
  while num2 < 10:
    num2 = num2 + 1
    MT[num1].append(num1*num2)
  num2 = 0

# print the multiplication table
for row in MT:
  for e in row:
    print(e, end="\t")
  print()

你必须这样做:

M = [['X', 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]]
for i in range(1, 11):
  row = [i]
  for j in range(1, 11):
    row.append(i*j)
  M.append(row)

相关问题 更多 >