python 你能打印一个接一个或一个接一个的循环线吗?

shyt4zoc  于 2022-10-30  发布在  Python
关注(0)|答案(2)|浏览(123)
i,a = 1,1  
for i in range(1,6):
    print(i, end = " ")
    i =+1
print()
for a in range(1,11):
    if a % 2 == False:
        print(a, end = " ")

我有这样的结果:
我想要这个:
如您所见,我卡在第3行,不知道如何继续
我试过了

i,a = 1,1  
for i in range(1,6):
    print(i, end = " ")
    i =+1
print()
for a in range(1,11):
    if a % 2 == False:
        print(a, end = " ")
    for b in range(3,16):
        print(b + 2, end = " ")

我预料到了=
但我得到了一个错误。

eit6fx6z

eit6fx6z1#

使用嵌套循环:

for i in range(1, 6):
    for j in range(i, i * 5 + 1, i):
        print(j, end=" ")
    print()

外部循环(i)是每行中的第一个数字;行(j)中的数字按i递增,直到行中有5个数字。range函数为您处理所有这些内容,因为您不仅可以告诉它范围start s和stop s的位置,还可以告诉它每个step的大小。
如果您想用另一个数字替换5,可以执行以下操作:

def print_times_table(n):
    for i in range(1, n + 1):
        for j in range(i, i * n + 1, i):
            print(j, end=" ")
        print()

print_times_table(10)

如果希望所有列都能更好地对齐,请尝试str.ljust

def print_times_table(n):
    width = len(str(n * n))
    for i in range(1, n + 1):
        for j in range(i, i * n + 1, i):
            print(str(j).ljust(width), end=" ")
        print()

print_times_table(5)
vxqlmq5t

vxqlmq5t2#

下面的代码给出了您需要的输出:我想要这个= 1 2 3 4 5 2 4 6 8 10 3 6 9 12 15 4 8 12 16 20 5 10 15 20 25

for i in range(1,6):
    for j in range(1,6):
        print(i*j, end=" ")
    print("\n")

相关问题