Python 3.x 此代码中可能有什么错误?我得到了一个“答案”;“未定义gs”;错误

Python 3.x 此代码中可能有什么错误?我得到了一个“答案”;“未定义gs”;错误,python-3.x,Python 3.x,我在def main()内部打印时正在工作。所以我“返回gs”并在外部打印。但它还是给了我 gs未定义错误 代码如下: def main(): p.init() screen = p.display.set_mode((WIDTH,HEIGHT)) clock = p.time.Clock() screen.fill(p.Color("white")) gs = chessengine.GameState() return gs

我在def main()内部打印时正在工作。所以我“返回gs”并在外部打印。但它还是给了我 gs未定义错误

代码如下:

def main():
    p.init()
    screen = p.display.set_mode((WIDTH,HEIGHT))
    clock = p.time.Clock()
    screen.fill(p.Color("white"))
    gs = chessengine.GameState()
    return gs

main()
print(gs.board)

问题是您没有将
main
返回的值赋给局部变量,因此当您在
print
语句中引用
gs
时,它超出了范围。相反,这应该是可行的:

gs = main()
print(gs.board)