for j in range(1, (6 - i)):
print(' ', end='')
for k in range(1, 2 * i):
print('*', end='')
这一小块看得不是很明白,不太清楚两个range的意思,有会的可以帮忙解答一下嘛
for j in range(1, (6 - i)):
print(' ', end='')
for k in range(1, 2 * i):
print('*', end='')
这一小块看得不是很明白,不太清楚两个range的意思,有会的可以帮忙解答一下嘛
range(a,b,c)返回一个可迭代对象,它从a开始,间隔c,直到b(不包含b)
举例:
range(1,10,2)返回1,3,5,7,9
range(10,1,-1)返回10,9,8,7,6,5,4,3,2
其中b是必填项,a和c可以省略,a的缺省值是0,c的缺省值是1
那么range(1,6)等价于range(1,6,1)
range(6)等价于range(0,6,1)
-=-=-=
那么知道了range本身是怎么回事,再看你的代码
最外层,range(1,6)就是1,2,3,4,5
内层的range(1,(6-i)),那就是从1到5-i
range(1,i*2),就是从1到i*2-1,i是个变量,每次循环都不一样,所以内层每次的循环次数也不同