我正在尝试输出带数字的直角三角形。以下是我到目前为止的情况:
for i in range(1, 10):
for j in range(i):
print(i, end='')
print()
我的输出是
1
22
333
4444
55555
666666
7777777
88888888
999999999
我的问题是这个。我可以使用嵌套的for循环使这些数字按顺序运行 例如:
1
12
123
1234
12345
123456
1234567
12345678
123456789
我已经尝试了大约6个其他设置,并且大多数时间保持相同的输出或多个错误。任何人都可以帮我解决这个问题吗?
答案 0 :(得分:1)
j
可以做的不仅仅是一个计数器:
for i in range(1, 10):
for j in range(i):
print(j + 1, end='')
print()
答案 1 :(得分:1)
你可能想考虑下一步会发生什么?这给你一些想法。
import itertools
for i in range(1, 21):
cycle = itertools.cycle([1,2,3,4,5,6,7,8,9,0])
for j in range(i):
print(next(cycle), end="")
print()
这会循环显示数字,如下所示:
1
12
123
1234
12345
123456
1234567
12345678
123456789
1234567890
12345678901
123456789012
1234567890123
12345678901234
123456789012345
1234567890123456
12345678901234567
123456789012345678
1234567890123456789
12345678901234567890
或者:
for i in range(1, 21):
for j in range(i):
print(((j % 10) + 1) % 10, end="")
print()