Python: строка исходного кода не может содержать нулевые байты

Я использую Max OS X 10.10.3, и я наконец получил graphics.py для показа в Python 3, прежде чем он сказал, что модуль не существует.

Однако теперь, когда я пытаюсь выполнить import graphics или from graphics import *, я получаю сообщение:

"source code string cannot contain null bytes"

Может ли любой пользователь Mac (используя Python 3) знать, что не так? Кто-нибудь использовал книгу Zelle и его модуль graphics.py? Спасибо.

Ответ 1

Для потомков: у меня была та же проблема и исправлено это с помощью

sed -i 's/\x0//g' FILENAME

Файл, казалось, был испорчен множеством способов (неправильные окончания и т.д.); не знаю, как...

См. fooobar.com/questions/89525/...

Ответ 2

Я только что столкнулся с этой проблемой, которая обычно вызывается форматом кодировки. Вы можете использовать Notepad++, чтобы изменить формат кодирования файлов Python на UTF-8.

Ответ 3

Откройте свой файл с помощью редактора, который может показать вам всех невидимых символов. Вы увидите, где находится недопустимый символ, просто удалите и введите его заново.

Если вы работаете на Mac, вы можете сделать это с помощью Coda> Открыть файл> Показать невидимые символы.

Ответ 4

Я использую код Visual Studio, кодировка была установлена в UTF-16 LE. Вы можете проверить кодировку в правой нижней части VSCode. Просто нажмите на кодировку и выберите "сохранить с кодировкой" и выберите UTF-8. Это сработало отлично.

Ответ 5

  • Перейти в папку python python36/Lib/site-packages/scipy/
  • Открыть __init__.py

Изменение:

from scipy._lib._testutils import PytestTester

в:

from scipy._lib.test__testutils import PytestTester

Он работал на моих окнах 7

Ответ 6

Я получил это сообщение, когда хотел использовать eval для ввода своей функции: иногда он принимает строку или int/float, но когда он принимает числа numpy, он выдает это исключение, eval(number).

Мое решение было eval(str(number)).

Ответ 7

Эта ошибка возникает не из исходного кода проекта. Такая ошибка возникает из вашего интерпретатора python. Поэтому лучшим решением является установка вашего интерпретатора python в каталог env. или правильно настроить интерпретаторы виртуального env, используя конфигурацию интерпретатора IDE.

Ответ 8

У меня такая же ошибка, и решение состоит в том, чтобы удалить библиотеку, и если вы не можете просто удалить ее и переустановить библиотеку. должен работать, он работает для меня...