使用嵌套for循环python 3.x的直角三角形
我试图输出一个带数字的直角三角形。以下是我到目前为止的情况:使用嵌套for循环python 3.x的直角三角形,python,python-3.x,Python,Python 3.x,我试图输出一个带数字的直角三角形。以下是我到目前为止的情况: 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循环按顺序运行这些数字吗 例如: 我试过其他6组,大部分都得到相同的输出或多个错误。有人能帮我解决这个问题吗?j不仅仅是一个计数器
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循环按顺序运行这些数字吗
例如:
我试过其他6组,大部分都得到相同的输出或多个错误。有人能帮我解决这个问题吗?
j
不仅仅是一个计数器:
for i in range(1, 10):
for j in range(i):
print(j + 1, end='')
print()
你可能想考虑下一步会发生什么吗?这给了你一些想法
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()
这很好。就像我说的,我对这门语言还是新手,现在我在你的书中看到,0实际上正在出现。这是怎么回事?因为每当我尝试将0作为范围的一部分运行时,我总是从1开始,而不是从0开始,就像我尝试第一个示例只是循环数字一样,第二个示例使用
%
模运算符给出余数,例如12%10=2
和0%10=0
,因此,添加1,它将从1
循环到10
,另一个%
将使它从1
循环到0
。我正准备发回给你,我已经计算出了这一部分。非常感谢你在这方面的帮助,现在它开始变得更有意义了。那么出于好奇,为什么当我尝试在步进计数中运行一组更高的数字,即10 11 12 13 14 15 16 17 18 19时,我试图改变变量,但要么像以前一样得到精确的打印,要么打印出来只有0。可能需要建立某种类型的库?还不知道怎么读,但明天我会再读一些书,等我有机会对你的订阅失败提出道歉时,我发现我的问题出在哪里了。在疯狂地开发循环代码的过程中,我一时冲动,忘了在最后的等式中添加高度变量。一旦输入完毕,它马上就开始了。谢谢你的帮助,我可以看到我需要重读的地方了。我错过了很多章节
for i in range(1, 21):
for j in range(i):
print(((j % 10) + 1) % 10, end="")
print()