关于“python打出星号这件事”
作者:互联网
列题
1.使用while循环输出正是三角型
'''
*
**
***
****
*****
'''
1.用while方法:
#定义i初始值为1
i = 1
#开始执行,while条件小于6,满足执行代码。
while i < 6:
#设置j的初始值为1
j = 1
#开始小while循环,开始j为1,小于i,打印出一个*在第一行,再自增为j=2。
#后面继续小while循环,j=2 > i=1,不符合,则不执行小while循环代码,跳出小while循环,执行下面代码。
while j <= i:
j += 1
print('*', end='')
#跳出小while代码打印出星号并自增,i=2。
#再循环到大while循环来判断条件。符合则往下执行,依次往复,打印第二行星号。
i += 1
print('')
2.用for方法:
#让i=[1,2,3,4,5]
for i in range(1, 6):
#再嵌套一个for循环,使 j=[1,x,y,z,i+1]
#刚开始i=1,所以循环到j=1,[1,2)
#运行在for j后打印*在第一层
#j取完值后直接退出小for循环,执行下面操作。
#回到第一个大for循环, i = 2,接下轮到小for循环,j=[1,2,3)
#第二次循环时j=2,则打印2颗星号在第二层,依次反复,就是一个正三角形。
for j in range(1, i+1):
print('*', end='')
#换层,换下一层。
print()
3.'''i和j共进退'''i=j,在同层次。前面小while因为i小所以正常结束循环到下面i自增,而for因为本身性质取到了就会继续往下取,但是i如果值不自增的话,就会跳出小for循环,返回大for循环,将i往后取值。
2.使用while循环输出倒是三角型
'''
*****
****
***
**
*
'''
1.用while方法:
#先定义一个i 的初始值为5,因为开始就是与j作比较运算。
i = 5
#先防止i最后为0,最好要大于0
while 0 < i < 6:
#定义一个j初始值为1
j = 1
#当 i=5 时,循环到小while循环,满足条件,打印*在第一层,然后自增,将继续在小while内判断是否满足条件
#如果满足条件,这继续在第一行打印第二个星号,直到j>i为止,也就是说j最多等于5
#打印5个星号在第一层。结束小while循环,执行后面i自增操作。然后执行大while循环,又到了,小while循环后,补充第二层,后面以此类推,反反复复,就得出来了。
while j <= i:
print("*", end='')
j += 1
i -= 1
print()
2.用for方法:
# i = [1, 2, 3, 4, 5]
# j = [i, 'x1', 'x2', 'x3', 5]
#开始i = 1,
for i in range(1, 6):
#j[1,6),j=1,打印一个*在第一层。
for j in range(i, 6):
#后面j判断,可以取第二值,所以继续循环小for,j=2
#打印第二个*在第一层,依次往复,直到打印5个*在第一层位为止就结束了循环,因为j它取不到值了,后面就循环到大for, i[2,5]。
#来到第二层,j[2,6),一遍遍取值打印,第二层,只能打印2->1,3->2,4->3,5->4,打印四个*在第四层。
print('*', end='')
print()
标签:打出,打印,满足条件,python,初始值,星号,while,循环,执行 来源: https://www.cnblogs.com/bjyxxc/p/16406802.html