我仍然试图为一个赋值创建一个代码但是遇到了一个问题,其中idle告诉我object()没有参数,但在代码中根本就没有object()。
_world = {}
starting_position = (0, 0)
def load_tiles():
"""Parses file describing the world space in the _world object"""
with open( "map.txt", 'r') as f:
rows = f.readlines()
x_max = len(rows[0].split('\t')) # believes all rows contains same amount of tabs
for y in range(len(rows)):
cols = rows[y].split('\t')
for x in range(x_max):
tile_name = cols[x].replace('\n', '')
if tile_name == 'StartingRoom':
global starting_position
starting_position = (x, y)
_world[(x, y)] = None if tile_name == '' else getattr(__import__('tiles'), tile_name)(x, y)
def tile_exists(x, y):
return _world.get((x, y))
答案 0 :(得分:0)
老实说,在我看来,你不能很好地理解自己的代码,这就是你投票的原因。您还没有发布所有代码。关键在函数getattr(__import__('tiles'), tile_name)(x, y)
中 - 您试图将变量x,y传递给(我认为)一个不期望任何变量的对象。这是您需要了解的内容,使用该方法的正确方法。