给定n,Python绘制数字菱形图案

比如:

n=6

img

思路是这样,下半个留给你自己补充,如果有不明白的可以私信或者追问


n = input("size: ")
# 初始打印数值为0
x = 0
ll = []
# 上半个,每行打印数字个数逐步递增
for i in range(1, int(n)+1):
    s = []
    for j in range(i):
        # 如果数值大于9,重新从0开始打印
        if x > 9:
            x = 0
        s.append(str(x))
        x += 1
    # 得到每行的结果,放入列表
    ll.append(s)

# 下半个,每行打印数字个数逐步递减,你自己尝试写一下
# TODO
    
# 格式化输出
for i in ll:
    s = " ".join(i)
    print(s.center(int(n)*2-1))

最终运行结果

img