首页 > 解决方案 > 每次迭代后如何在同一行打印循环输出

问题描述

#我的代码#

a = int(input("enter a no"))
b = int(input("enter a range"))
for i in range(1, a+1):
    print(i)

    for j in range(1, b + 1):
        c = i * j
        print(i, "*", j, "=", c)

##我想要这样的输出。请帮我用一个简单的方法来打印这样。##

在此处输入图像描述

标签: pythonformatting

解决方案


您可以通过指定“end”参数来告诉 print 以换行符以外的其他内容结束:

a = int(input("enter a no "))
b = int(input("enter a range "))

for i in range(1, a+1):
    print(i, end="            ")
print("")

for j in range(1, b + 1):
    for i in range(1, a+1):
        c = i * j
        print(i, "*", j, "=", c, end="    ")
    print("")

在这种情况下,我将主循环分成两个单独的循环,第一个以较大的间距输出顶线(1、2、3...),而第二个则以稍小的间距输出所有其他循环。

我还切换了后面循环的顺序,因为应该有b行,每行都有一个乘法,所以b循环需要是外部(第一个)循环。

在这两种情况下,当我们需要时,都会使用空打印语句来输出换行符。


推荐阅读