#打印对顶三角形,如下图
*******
*****
***
*
***
*****
*******
将上图可看做是个对称图形
第一行7个*
第二行5个*,首尾各空一个空格
第三行3个*,首尾各空两个空格
...
第一行可以看做是-n//2+1~n//2,即-3~3
方法:
for i in range(-3,4): #已0为对称轴,打印上下形状
print(' '* (3+1 - abs(i)) + '*' * (2 * abs(i) + 1)) #abs(),是取绝对值函数
变式,打印任意长的对顶三角形:
n = int(input('输入三角形边长:'))
mid = n//2
for i in range(-mid,mid+1):
print(' '* (mid+1 - abs(i)) + '*' * (2 * abs(i) + 1))