例1:请利用嵌套for循环生成一个直角三角形图形 * ** *** **** *****
for i in range(1,6):
for j in range(0,i):
print("*",end="")
# 占位让程序换行
print()
思路:总共有5行,就用range(1,6),发现第N行就有N个“*”,每一行的“*”就用range(1,N)来表示,print默认输出是换行的,要想实现不换行则需在末尾加上end = " ",每一行循环完毕就用print()输出换行
不用嵌套循环实现:
for i in range(1,6):
第i行就打印i个“*”
print("*"*i,end="")
print()
*
**
***
****
*****
例2:输出等边三角形(三条边均为5个*)
for Index_row in range(1,6):
打印每一行前面的空格
for index_space in range(1,6-Index_row):
print(" ",end="")
打印“* ”
for Index_col in range(1,Index_row+1):
print("* ",end="")
print()
*
* *
* * *
* * * *
* * * * *
思路:总共有5行,就用range(1,6),发现第N行就有N个“* ”+(6-N-1)(PS:若从1开始不是0开始的就是6-N)个空格,每一行的“* ”就用range(1,N+1)来表示,print默认输出是换行的,要想实现不换行则需在末尾加上end = " ",每一行循环完毕就用print()输出换行
例3:打印等腰三角形(答案同例1)
例4:打印倒三角形
for i in range(1,6):
for j in range(6-i,0,-1):
print("*",end="")
print()
*****
****
***
**
*