📜  Python程序以蛇模式打印矩阵(1)

📅  最后修改于: 2023-12-03 15:34:31.421000             🧑  作者: Mango

Python程序以蛇模式打印矩阵

在Python中,我们可以使用简单的代码来以蛇形方式打印出一个矩阵。

实现思路

我们可以通过两个循环来遍历一个二维矩阵,然后使用if语句来决定我们要向左还是向右移动。为了更好地解释代码,我们将在注释中提供更多详细信息。

示例代码

下面是一个示例代码,以一个5 x 5的矩阵为例:

# 定义一个5x5的矩阵
matrix = [[1, 2, 3, 4, 5],
          [6, 7, 8, 9, 10],
          [11, 12, 13, 14, 15],
          [16, 17, 18, 19, 20],
          [21, 22, 23, 24, 25]]

# 定义矩阵的大小
m, n = len(matrix), len(matrix[0])

# 定义当前位置
i, j, di, dj = 0, 0, 0, 1

# 循环遍历矩阵
for _ in range(m * n):
    print(matrix[i][j], end=' ')

    # 定义下一个数的位置
    if di == 0 and dj == 1 and j == n - 1:
        di, dj = 1, 0

    elif di == 1 and dj == 0 and i == m - 1:
        di, dj = 0, -1

    elif di == 0 and dj == -1 and j == 0:
        di, dj = -1, 0

    elif di == -1 and dj == 0 and i == 1:
        di, dj = 0, 1

    i, j = i + di, j + dj

运行代码后,将以以下方式打印矩阵:

1 2 3 4 5
10 9 8 7 6
11 12 13 14 15
20 19 18 17 16
21 22 23 24 25
结语

这是一个简单的方法,可以让你以蛇形方式打印出一个矩阵。这个方法还是相对容易理解和实现的,在其他算法或编程练习中也非常有用。