python如何输出等边三角形?
要在Python中输出等边三角形,可以利用循环和字符串操作来实现。等边三角形的特点是每一行的星号数量递增,并且对齐中心。
方法一:使用循环和字符串操作
pythondef print_equilateral_triangle(rows):
# 计算三角形底边的宽度
base_width = 2 * rows - 1
# 打印每一行
for i in range(1, rows + 1):
# 计算当前行的空格数
num_spaces = rows - i
# 计算当前行的星号数
num_stars = 2 * i - 1
# 构造当前行的输出字符串
line = ' ' * num_spaces + '*' * num_stars
# 输出当前行
print(line)
# 测试输出一个高为5的等边三角形
print_equilateral_triangle(5)
解释:
计算底边宽度:等边三角形的底边宽度为
2 * rows - 1
,其中rows
是三角形的高度。循环打印每一行:
- 外层循环控制行数,从1到
rows
。 - 内层循环计算每一行的空格数和星号数:
- 空格数
num_spaces
为rows - i
,逐行递减。 - 星号数
num_stars
为2 * i - 1
,逐行递增。
- 空格数
- 外层循环控制行数,从1到
构造输出字符串:
- 使用空格乘以
num_spaces
和星号*
乘以num_stars
构成每一行的字符串line
。
- 使用空格乘以
打印输出:
- 使用
print(line)
输出每一行的字符串,形成等边三角形的效果。
- 使用
示例输出:
运行上述代码会输出一个高度为5的等边三角形:
markdown *
***
*****
*******
*********
这样,你可以通过调整 print_equilateral_triangle
函数的参数 rows
来输出不同高度的等边三角形。