Skip to main content
 首页 » 编程设计

Python 函数到 'rotate' 网格 90 度与 for 循环

2025年05月04日14xxx_UU

<分区>

我试图将网格顺时针“旋转”90 度,并得出以下 Python 代码。

def rotate90(grid): 
    rotatedGrid = grid[:] 
    for i in range (0, len(grid)): 
        for j in range (0, len(grid)): 
            rotatedGrid[i][j] = grid[-(j+1)][i][:] 
    return rotatedGrid 

在网格上打印 rotate90(grid) [['1', '2', '3'], ['4', '5', '6'], ['7', '8 ', '9']] 输出 [['7', '4', '7'], ['8', '5', '4'], ['9', ' 4', '7']],而我期望 [['7', '4', '1'], ['8', '5', '2'], [' 9', '6', '3']]。造成这种差异的原因是什么?

(我没有将它们转换为整数的原因是最终我将使用“@”和“-”字符而不是数字。)