Строка лабиринта содержит много пробелов, поэтому вы не получите ожидаемого результата.
Я рекомендую создать список строк, где каждая строка представляет одну строку сетки: (Вы splitlines
вообще не нужно)
self.maze = ["12111111111111111111",
"10100000400000000001",
"10101110101111111111",
"10401000100000000401",
"10111011111111101101",
"10100010004000101101",
"14111110111110111101",
"10001000400010104001",
"11101011111010101101",
"10001010401010101101",
"11101010101010101101",
"10001000101010101101",
"14111111101010001101",
"10000040101111111111",
"11111010101000400011",
"10001010101011111011",
"10111010100010001003",
"10000010111110101011",
"11111010000000101011",
"11111111111111111111"]
В качестве альтернативы вы можете заменить все пробелы на "ничто" (.replace(" ", "")
):
self.maze = """
1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 0 1 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 1
1 0 1 0 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1
1 0 4 0 1 0 0 0 1 0 0 0 0 0 0 0 0 4 0 1
1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 0 1
1 0 1 0 0 0 1 0 0 0 4 0 0 0 1 0 1 1 0 1
1 4 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 0 1
1 0 0 0 1 0 0 0 4 0 0 0 1 0 1 0 4 0 0 1
1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 0 1 1 0 1
1 0 0 0 1 0 1 0 4 0 1 0 1 0 1 0 1 1 0 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1
1 0 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 1
1 4 1 1 1 1 1 1 1 0 1 0 1 0 0 0 1 1 0 1
1 0 0 0 0 0 4 0 1 0 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 0 1 0 1 0 1 0 0 0 4 0 0 0 1 1
1 0 0 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 1 1
1 0 1 1 1 0 1 0 1 0 0 0 1 0 0 0 1 0 0 3
1 0 0 0 0 0 1 0 1 1 1 1 1 0 1 0 1 0 1 1
1 1 1 1 1 0 1 0 0 0 0 0 0 0 1 0 1 0 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 """
self.maze = self.maze.replace(" ", "").splitlines()