用Python输出一个n行的蛇形矩阵。每行两个数字之间一个空格
时间: 2024-11-25 10:33:07 浏览: 15
在Python中,你可以通过嵌套循环来创建一个n行的蛇形矩阵。下面是一个简单的示例,它会打印出n行的矩阵,其中每个数之间有一个空格:
```python
def print_snake_matrix(n):
# 创建一个边长为n的二维列表
matrix = [[0] * n for _ in range(n)]
# 遍历矩阵,从左上角开始,顺时针方向填充数字
dx, dy = [1, -1], [1, 0]
x, y = 0, 0
num = 1
for _ in range(2*n - 1): # 需要2n-1次遍历来完成蛇形
matrix[x][y] = num
num += 1
if x + dx == n or y + dy == n or x + dx < 0 or y + dy < 0: # 到达边界
dx, dy = -dy, dx # 变换移动方向
x, y = x + dx, y + dy
# 打印矩阵,每行两个数字间加一个空格
for row in matrix:
for i, val in enumerate(row):
if i % 2 != 0: # 每隔一个元素插入空格
print(" ", end="")
print(val, end=" ")
print()
# 调用函数并传入想要的行数,例如5行
print_snake_matrix(5)
阅读全文