2016-03-12 2 views
1

Я пытаюсь сделать карту, используя pygame, но я получаю IndexError: string index out of range Ошибка при каждом запуске программы.IndexError: строка индекс вне диапазона ошибка

Это линия получает ошибку: return self.data[y][x] в

def__getitem__(self, xy): 
    x = xy[0] 
    y = xy[1] 
    return self.data[y][x] 

Он работал, когда я была моя карта определяется как

hallway_entrance_lilbrary =\ 
["xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx...........xxxxx", 
"xxxxx.....s.....xxxxx",] 

где x стен, . является напольной плиткой и s является стартовой площадью.

Ошибка начал показывать, когда я изменил карту

hallway_entrance_lilbrary =\ 
["xxxxxxx...xxxxxxx" 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xx....x...x....x", 
"xxxxxxx.s.xxxxxx",] 

Я попытался сделать новую карту короче, так что его длина сравнима с первым, но ошибка все еще генерируется.

Благодарим за помощь.

ответ

0

Некорректное Синтаксис

Я похож вам не хватает запятой на первой строке примера секунд.

hallway_entrance_lilbrary =\ 
["xxxxxxx...xxxxxxx" # <--- no comma? 
"xx....x...x....x", 
... 
Смежные вопросы