打印金字塔Python
时间: 2025-01-08 16:11:07 浏览: 4
### 使用 Python 打印金字塔形状
为了实现一个简单的金字塔结构,可以采用嵌套循环来控制每一行中的字符数量以及位置。下面是一个基于给定范围内的用户输入构建金字塔的例子:
```python
a = int(input("请输入你要打印的行数:"))
for i in range(1, a + 1):
for k in range(a, 0, -1):
if k <= i:
print(k, end=" ")
else:
print(" ", end=" ")
for j in range(1, a + 1):
if j <= i:
print(j, end=" ")
print("")
```
上述代码创建了一个由数字组成的金字塔,其中左侧部分是从大到小排列的数字,右侧则是从小到大的顺序[^1]。
如果目标是生成更传统的星号(*)构成的实心金字塔,则可以调整逻辑如下:
```python
n = int(input('请输入金字塔的高度: '))
for i in range(n):
# Print leading spaces
print(' ' * (n - i - 1), end='')
# Print stars
print('*' * (2*i + 1))
```
这段脚本会先输出适当数量的空间以保持图形居中,接着按照当前层数增加星星的数量形成逐层增宽的效果[^2]。
对于想要制作空心金字塔的情况,可以在内部填充空白而非全部填满星号,仅保留边缘处有星号显示:
```python
height = int(input('Enter height of the pyramid: '))
width = 2*height - 1
for row in range(height):
for col in range(width):
if (row == height-1 or
col == width//2 or
row+col == width//2 or
col-row == width//2):
print('*', end="")
else:
print(end=" ")
print()
```
此段代码利用条件判断决定何时放置星号,从而实现了空心中间带有边框效果的金字塔。
阅读全文