1 回答

TA貢獻1780條經(jīng)驗 獲得超1個贊
你應該把你的類變成一個枚舉并引用方向作為枚舉的成員,這樣它們就不會在定義時解析(這會讓你在賦值之前引用一個變量的錯誤),但只有在實際使用時才解析。
from enum import Enum
class Direction(Enum):
def __init__(self, char, reverse, increment, mask):
self.char = char
self.reverse = reverse
self.increment = increment
self.mask = mask
def __str__(self):
return self.char
NORTH = Direction("?", Direction.SOUTH, [x, y + 1], 1)
SOUTH = Direction("?", Direction.NORTH, [x, y - 1], 2)
EAST = Direction("?", Direction.WEST, [x + 1, y], 4)
WEST = Direction("?", Direction.EAST, [x - 1, y], 8)
添加回答
舉報