这个嵌套循环有什么问题?



我正在编写一个程序,它的输出应该看起来像这样。

111111111
222222222
333333333
444444444
555555555
666666666
777777777
888888888
999999999

我写了这段代码:

for i in range(10):
for j in range(10):
print (str(i) * i)
print()

但这似乎不对!

有什么想法吗?

你只需要一个 for 循环,因为你对每个数字都有一个固定重复,即 9。此外,您需要将range(10)替换为range(1,10),因为默认情况下range(10)从 0 开始,但您不需要000000000

for i in range(1,10):
print (str(i) * 9)

输出

111111111
222222222
333333333
444444444
555555555
666666666
777777777
888888888
999999999

请注意,这是一个线性序列,因此您可以使用range

print(*range(111111111, 1000000000, 111111111), sep='n')

输出

111111111
222222222
333333333
444444444
555555555
666666666
777777777
888888888
999999999
[print(str(i)*len(range(1,10))) for i in range(1,10)]
111111111
222222222
333333333
444444444
555555555
666666666
777777777
888888888
999999999

扩展:

for i in range(1,10):
print(str(i) * len(range(1,10)))

最新更新