python如何输出等边三角形?

要在Python中输出等边三角形,可以利用循环和字符串操作来实现。等边三角形的特点是每一行的星号数量递增,并且对齐中心。

方法一:使用循环和字符串操作

python
def 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)

解释:

  1. 计算底边宽度:等边三角形的底边宽度为 2 * rows - 1,其中 rows 是三角形的高度。

  2. 循环打印每一行

    • 外层循环控制行数,从1到 rows
    • 内层循环计算每一行的空格数和星号数:
      • 空格数 num_spacesrows - i,逐行递减。
      • 星号数 num_stars2 * i - 1,逐行递增。
  3. 构造输出字符串

    • 使用空格乘以 num_spaces 和星号 * 乘以 num_stars 构成每一行的字符串 line
  4. 打印输出

    • 使用 print(line) 输出每一行的字符串,形成等边三角形的效果。

示例输出:

运行上述代码会输出一个高度为5的等边三角形:

markdown
* *** ***** ******* *********

这样,你可以通过调整 print_equilateral_triangle 函数的参数 rows 来输出不同高度的等边三角形。