Python: неверный токен

Некоторые из вас могут распознать это как проблему проекта Эйлера № 11. Эта проблема с сеткой.

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

grid = [ 
[ 08, 02, 22, 97, 38, 15, 00, 40, 00, 75, 04, 05, 07, 78, 52, 12, 50, 77, 91, 08 ],
[ 49, 49, 99, 40, 17, 81, 18, 57, 60, 87, 17, 40, 98, 43, 69, 48, 04, 56, 62, 00 ],
[ 81, 49, 31, 73, 55, 79, 14, 29, 93, 71, 40, 67, 53, 88, 30, 03, 49, 13, 36, 65 ],
...

И я получаю эту ошибку:

  Файл "D:\development\Python\ProjectEuler\p11.py", строка 3
    [ 08, 02, 22, 97, 38, 15, 00, 40, 00, 75, 04, 05, 07, 78, 52, 12, 50, 77, 91, 08 ],
       ^ SyntaxError: неверный токен

Почему выдает ошибку перед запятой?

3 ответа

Решение

Я думаю, что когда вы начинаете буквальное число с 0, оно интерпретирует его как восьмеричное число, и вы не можете иметь "8" в восьмеричном числе.

Обратите внимание, что символ "^" в ошибке указывает точно на ошибочный столбец. Вместе с номером строки он указывает точно на цифру 8. Это может помочь вам привести то, что предложил Джереми.

Просто удалите ведущие нули.

Первый ноль делает восьмеричное число.

Другие вопросы по тегам