立即学习:https://edu.csdn.net/course/play/24797/282175?utm_source=blogtoedu
—— 控制台打印菱形
. 第一行、最后一行,每行打印一个星号。
. 其他每行打印两个星号。
. 计算开始多少个空格、星号,然后多少个空格,最后星号结尾。
# coding: utf-8
####################################
# 文件名称:print_diamond.py
# 功能描述:控制台打印菱形
# 编写日期:2020-09-06
# 编写人员:
####################################
'''
前面的空格:层数-1,层数-2... 中间空格:1、3、5...
*
* *
* *
* *
* * 前面的空格:1、2、3... 中间的空格:层数*2-5、层数*2-7...
* *
* *
* *
*
'''
N = 5
# 打印上面一半
for i in rang(N):
# 第一行
if i == 0:
print(' ' * (N-1-i) + "*")
else:
s = ' ' * (N - 1 - i) + '*' + (i * 2 - 1) * ' ' + '*'
print(s)
# 打印下面一半
for i in rang(N - 1):
# 最后一行
if i == N - 2:
print(' ' * (N - 1) + "*")
else:
s = ' ' * (i+1) + '*' + (N * 2 - 5 - 2 * i) * ' ' + '*'
print(s)