求助:print("\n")放在最后的意义?
以上为《零基础入门学习Python》最新版-第004讲课后作业-动动手1题目,
答案是:
>>> for i in range(1, 10):
... for j in range(1, i+1):
... print(i, "x", j, "=", i * j, end=' ')
... print("\n")
疑问:为什么print("\n")放在最后,使用一个缩进,可以做到九九乘法表这种格式?
要是改成:
for i in range(1, 10):
for j in range(1, i+1):
print(i, "x", j, "=", i * j, end="\n")
就可以理解,在每次乘法(字段)末尾加一个转行符。
答案最后添加print("\n")看不懂。 funglanyan 发表于 2021-4-14 17:08
i和j不是代表那个数字么?
print("\n")为了for j in range(1,i+1)计算完后要进行换行操作,所以要跟fo ...
i和j是代表两个乘数,外部循环赋值1,内部循环的值也应该是1,然后内部循环结束,再开始外部循环赋值下一个数2,内部循环就是1-2,从实际打印效果上看这两个变量一个控制着行的变化,一个控制着列的变化。
对,print("/n")要和for j in range(1, i+1)相同缩进量,表示执行完for j in range(1, i+1)这一个循环之后再换行 不是每次乘法都要换行只有i变化的时候换行
答案给的print("\n")也不对 print('')就已经是换行了 你这个换行两次了吧 kogawananari 发表于 2021-4-14 00:43
不是每次乘法都要换行只有i变化的时候换行
答案给的print("\n")也不对 print('')就已经是换行了 你这个 ...
光print()也可以,还能省一对引号 kogawananari 发表于 2021-4-14 00:43
不是每次乘法都要换行只有i变化的时候换行
答案给的print("\n")也不对 print('')就已经是换行了 你这个 ...
这样是对的,不然只能换一次行,中间的空行就没了 换行 kogawananari 发表于 2021-4-14 00:43
不是每次乘法都要换行只有i变化的时候换行
答案给的print("\n")也不对 print('')就已经是换行了 你这个 ...
{:10_331:} 实在一下想不明白,那就 把10改成4,先打个 三三乘法表。。 然后自己按代码一步步地走。。 i代表行,j代表列,最后的print("\n")是为了每一行计算完之后,再进行换行操作,如果像你说的end="\n",就是在每次计算一个结果之后就要换行,比如本来应该是
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9 如果end="\n"的话就变成
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
五岁能抬头 发表于 2021-4-14 11:37
i代表行,j代表列,最后的print("\n")是为了每一行计算完之后,再进行换行操作,如果像你说的end="\n",就 ...
i和j不是代表那个数字么?
print("\n")为了for j in range(1,i+1)计算完后要进行换行操作,所以要跟for j in range(1,i+1)相同缩进量吗? 五岁能抬头 发表于 2021-4-14 00:32
i和j是代表两个乘数,外部循环赋值1,内部循环的值也应该是1,然后内部循环结束,再开始外部循环赋值下一 ...
噢~~就是for i in range(1, 10)是外部循环,for j in range(1, i+1)是内部循环~
谢谢大佬~~ 龙舞九天 发表于 2021-4-15 07:42
for i in range(1,10):
for j in range(1,i+1):
print(i,"*",j,i*j)
试了一下,你这个相当于在end="\n",而且你中途还差了个“=”
页:
[1]