1class Solution:2def generateMatrix(self, n: int) -> List[List[int]]:3if not n:4return []5matrix = [[0 for _ in range(n)] for _ in range(n)]6left, right, top, bottom, num = 0, n - 1, 0, n - 1, 17while left <= right and top <= bottom:8for i in range(left, right + 1):9matrix[top][i] = num10num += 111top += 112for i in range(top, bottom + 1):13matrix[i][right] = num14num += 115right -= 116if top <= bottom:17for i in range(right, left - 1, -1):18matrix[bottom][i] = num19num += 120bottom -= 121if left <= right:22for i in range(bottom, top - 1, -1):23matrix[i][left] = num24num += 125left += 126return matrix