python - 使用 2D 列表和 while 循环创建乘法表
问题描述
我必须使用三个 while 循环来创建乘法表的二维列表。该指令不允许我创建另一个列表。
我能够在列表中创建两个嵌套列表。我主要关心的是如何将两个嵌套列表相乘并收集结果。我希望在这里得到一些建议。
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)
我希望得到这样的结果:
解决方案
如果您需要使用 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()
推荐阅读
- jvm - JMX 和不同的类加载器
- java - ConcurrentSkipListMap 的自定义 hashCode 实现无法按预期工作
- c# - C# 加入列表
并处理 NULL/空值 - dynamodb-queries - DynamoDB 查询输入:如何检索键值不为空的所有项目
- oracle - 在 Oracle View 中使用 Union All 性能会降低
- java - 在 Android 中检索文本视图时不显示 Firebase 实时数据库
- c# - 使用 for 循环从 excel 电子表格中读取数据。无法获得列中的第二个值
- firebase - 为什么 Jmeter 不能使用 firebase 作为数据连接来记录网站
- javascript - 为什么 if 语句不检查下面的 http 请求的状态?
- javascript - 如何修复网站视图不超过 1440 像素