# -*- coding: utf-8 -*-"""
功能:打印菱形
作者:zwh
日期:2021年11月12日
"""
a =int(input("请输入菱形每条边星星的个数:"))# 打印实心菱形# 下面a无法同时用在三个地方,所以需要赋值b,c
b = a
c = a
for i inrange(1, a +1):# 与今天上一个博客打印三角形相似print(" "*(a-i+1),"*"*(2* i -1))
b -=1if i == a:# 分界点,打印倒三角形for j inrange(1, a):# 这里a没有+1,是为了承接上面三角形的最后一排print(" "*(j+1),"*"*(2*c-3))
c -=1
打印空心菱形
# -*- coding: utf-8 -*-"""
功能:打印空心菱形
作者:zwh
日期:2021年11月9日
"""
a =int(input("请输入菱形每条边星星的个数:"))# 打印空心菱形
b = a
c = a
# 打印头顶第一个*print(' '*(a-1),'*')# 除去第一个*,从第二排开始打印for i inrange(2, a +1):print(" "*(a-i+1)+'*'+" "*(2* i -3)+'*')# (" " * (a-i+1))打印前导空格(递减)# 第一个'*'为前导空格后的第一个*# (" " * (2 * i - 3))打印中间的空格# 最后一个'*'为右边的*# 用+链接起来
b -=1if i == a:# 分界点,开始打印倒三角for j inrange(2, a):# 这里的2表示这个倒三角形没有上面一排接在了上面的三角形的最后一排下print(" "* j +"*"+' '*(2*c-5)+'*')# 这里的*和’ ‘同上面的三角形
c -=1print(" "* a +'*')# 这里输出最后一个*