【发布时间】:2020-10-10 14:03:47
【问题描述】:
我正在用 python 制作一个 cli“高峰时间”游戏。游戏板来自用户的输入,汽车由字母表示。我通过将每个唯一字母添加到字典中来解析电路板以查找每辆车。我正在尝试使用汽车字典来创建汽车(代码中前面的汽车类的实例)并计算大小和方向。
使用我在板类中的代码,我收到以下错误:TypeError: create_all_cars_in_this_board() missing 1 required positional argument: 'my_cars_dict'
find_all_cars_in_this_board 方法似乎工作正常,但 create_all_cars_in_this_board 方法无法访问它。
def find_all_cars_in_this_board(self):
my_cars_dict = {}
for h in range(self.height):
for w in range(self.width):
if self.game_board[h][w].isalpha():
if self.game_board[h][w] in my_cars_dict:
my_cars_dict[self.game_board[h][w]].append((h, w))
else:
my_cars_dict[self.game_board[h][w]] = [(h, w)]
return my_cars_dict
def create_all_cars_in_this_board(self, my_cars_dict):
my_cars = []
for letter in my_cars_dict.keys():
c = Car(my_cars_dict[letter])
my_cars.append(c)
for c in my_cars:
c.calc_size()
c.calc_direction()
return my_cars
【问题讨论】:
-
我们需要看看你是怎么打电话给
create_all_cars_in_this_board的。但是根据错误,您要么没有传递my_cars_dict,要么像调用静态方法一样调用该方法。 -
你没有显示调用
create_all_cars_in_this_board的代码
标签: python function dictionary methods