Python打印空心菱形
时间: 2023-05-18 11:02:29 浏览: 66
以下是Python打印空心菱形的代码:
```
n = int(input("请输入菱形的边长:"))
for i in range(n):
for j in range(n-i-1):
print(" ", end="")
for j in range(2*i+1):
if j == 0 or j == 2*i or i == n-1:
print("*", end="")
else:
print(" ", end="")
print()
for i in range(n-2, -1, -1):
for j in range(n-i-1):
print(" ", end="")
for j in range(2*i+1):
if j == 0 or j == 2*i or i == n-1:
print("*", end="")
else:
print(" ", end="")
print()
```
希望对你有帮助!
相关问题
如何用python打印空心菱形
在Python中,打印空心菱形可以使用嵌套循环的方式,内层循环用于打印星号(*)。这里是一个简单的示例,展示如何打印一个5行的空心菱形:
```python
def print_hollow_diamond(n):
# 打印上半部分菱形
for i in range(1, n+1):
for j in range(n - i): # 上半部分的空格
print(' ', end='')
for k in range(2*i - 1): # 上半部分的星号
print('*', end='')
print() # 换行
# 打印下半部分菱形,只在顶部换行一次
if n > 1:
print()
for i in range(n-2, -1, -1): # 下半部分的星号和空格数量递减
for j in range(n - i): # 下半部分的空格
print(' ', end='')
for k in range(2*i - 1): # 下半部分的星号
print('*', end='')
print()
# 调用函数并传入想要的菱形层数
print_hollow_diamond(5)
python打印空心菱形,对角线相等且为奇数空心周围都用*填满
好的,下面是Python代码实现空心菱形:
```python
n = int(input("请输入菱形的对角线长度:"))
# 上半部分
for i in range(n):
for j in range(n-i):
print("*", end="")
for j in range(2*i-1):
print(" ", end="")
if i == 0:
print("")
else:
print("*")
# 下半部分
for i in range(n-2, -1, -1):
for j in range(n-i):
print("*", end="")
for j in range(2*i-1):
print(" ", end="")
if i == 0:
print("")
else:
print("*")
```
输出结果如下(以对角线长度为7为例):
```
请输入菱形的对角线长度:7
*******
***** ***
**** *
*** *
**** *
***** ***
*******
```
其中,输入的n代表菱形的对角线长度,对角线长度必须为奇数。对于上半部分,先输出n个星号,再输出2i-1个空格和一个星号(如果i为0,则只输出n个星号)。对于下半部分,与上半部分类似,只是输出顺序相反。
阅读全文