该示例将介绍如何通过两个 for 循环打印菱形。
一个标准的菱形由两部分组成:
上半部分:正三角形(从小到大)
下半部分:倒三角形(从大到小)
注意:
上半部分:size 行
下半部分:size - 1 行(避免中间行重复,即中间出现两行相同*个数的行数)
示例代码:
# 原理:菱形 = 正三角形(上半部分) + 倒三角形(下半部分)
# 定义菱形的边长(行数的一半,建议用奇数更美观)
size = 5
# 打印上半部分(正三角形,递增)
for i in range(size):
# 打印前置空格:行数越大,空格越少
print(" " * (size - i - 1), end="")
# 打印星号:奇数递增 1,3,5,7,9...
print("*" * (2 * i + 1))
# 打印下半部分(倒三角形,递减)
for i in range(size - 2, -1, -1):
# 打印前置空格:行数越大,空格越多
print(" " * (size - i - 1), end="")
# 打印星号:奇数递减 7,5,3,1...
print("*" * (2 * i + 1))运行结果:
*
***
*****
*******
*********
*******
*****
***
*