我是python的新手,我有以下代码并且很难理解第3行和第3行。 6(双星报价)!
a=5
for row in range(1, a + 1):
**row_string = ""**
for column in range(1, a + 1):
product = row * column
**row_string += str(product) + "\t"**
print(row_string)
在这段代码中,我没有理解第3行和第6行(双星引用)。是否有可能向我描述这些线条是如何执行的?如果可能的话请详细说明。 提前谢谢。
答案 0 :(得分:1)
每次外部循环运行时,外部循环中的row_string = ""
会创建一个新的空字符串。
因此,当内循环开始运行时,row_string
是一个空字符串。现在,每次内部循环运行时,都会向该空字符串添加(附加)某些内容,即product
的值转换为字符串和选项卡\t
。内循环完成后,整个字符串都会打印出来。
实际上row_string = ""
有两个目的:首先它会创建一个空字符串,因此您可以附加一些内容。第二,它确保每次内循环运行时,都会使用一个新的字符串(因此外部循环彼此独立)
答案 1 :(得分:0)
对于每一行,我们将所有列值组合成一个字符串。
因此,在第一个标记的位置,我们正在为row_string分配一个空字符串。这清除了之前的任何内容。
接下来,在第二个for循环中,我们遍历并将“product”和制表符附加到row_string。
内部for循环完成后,我们打印字符串,然后跳回到顶部。在这里我们清除字符串,然后在第二行重新开始。
所以如果我们的表看起来像这样:
red | blue | green
purple | yellow | orange
我们的输出看起来像:
red blue green
purple yellow orange
答案 2 :(得分:0)
变量“row_string”在第3行被设置为空变量,因此第二个for循环可以在每次迭代时创建不同的列。因此,python将第一个变量设置为“1”,并将第一列的相同变量添加到自身5次。然后在调用下一列之前,下一行创建为“2”,因此列迭代可以在列中向其自身添加2。