第26期-数字金字塔

1 问题描述

数字金字塔
按照格式将数字输出成金字塔形状
输出结果要求如下
image.png

2 解题思路

总的是两层for循环嵌套,最外层循环是根据输入的数字,来对每行添加空格,内层两个平行的for循环分别用于输入两侧的数字
也可以使用列表分别输出数字

3 解题方法

max=int(input('请输入行数:'))
x=[' ']*(2*max-1)
for i in range(max):
    x[max-1-i]=str(i+1)
    x[max-1+i]=str(i+1)
    print(''.join(x))
View Code

第1行: 使用input函数输入行数,转换为int整数类型并返回给max
第2行: 我们观察到问题描述中的图片可以得知每一行的数字个数分别是其行数的两倍减一,于是创建一个对应长度的列表x,x中的元素全是空格
第3-5行: 使用for循环遍历max次,每一次遍历都改变两个数变成对应的数字
第6行: 打印列表中的空格和数字(注意join函数只能打印字符串,所以数字需要转换成字符串类型)

代码运行结果为:
image.png

 

posted @ 2022-01-06 17:31  LG03  阅读(103)  评论(0编辑  收藏  举报