В этой статье блога я расскажу вам, что такое недопустимый символ SyntaxError в идентификаторе в Python, как эта ошибка возникает, а также как ее обрабатывать и исправлять, используя различные методы.

SyntaxError — это ошибки в исходном коде Python, такие как орфографические и пунктуационные ошибки, неправильные метки и т. д., которые приводят к созданию интерпретатором сообщения об ошибке.

В Python идентификаторы — это имена, которые идентифицируют переменные, функции, классы, модули или другие объекты. Эти идентификаторы играют решающую роль в программировании, поскольку они предоставляют средства для ссылки на различные элементы внутри программы.

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

Содержание

Правила идентификатора

Идентификатор в Python должен соответствовать определенным правилам:

  1. Он может содержать только буквенно-цифровые символы(az, AZ, 0–9) и символы подчеркивания(_).
  2. Первый символ не может быть цифрой.
  3. Это не может быть зарезервированное слово или ключевое слово, используемое самим Python.
  4. Он не может содержать пробелы или специальные символы, такие как !, @, #, $, % и т. д.

Если какой-либо символ нарушает эти правила, он становится недопустимым символом в идентификаторе и приведет к синтаксической ошибке при запуске программы.

Почему возникает ошибка

«Синтаксическая ошибка: недопустимый символ в идентификаторе» в Python возникает, когда интерпретатор встречает в идентификаторе символ, который нарушает правила именования идентификаторов.

Причина

  • Если вы запускаете код, вы можете получить недопустимый символ в ошибке идентификатора из-за какого-либо символа в середине имени переменной или функции Python.
  • Обычно мы получаем эту ошибку, потому что вы скопировали отформатированный код с любого веб-сайта.

Пример:

def check(x):
    if x in range(4, 9):
        print("%s in the range" % str(x))
    else:
        print("not in the range")
check   (5)

После написания приведенного выше кода я получил недопустимый символ SyntaxError в идентификаторе Python в строке номер 6.

Вы можете увидеть ошибку SyntaxError: недопустимый символ в идентификаторе в Python на снимке экрана ниже.

SyntaxError недопустимый символ в идентификаторе в Python

Как исправить

Вот список способов исправить эту ошибку в Python:

  • Убедитесь, что ваши идентификаторы соответствуют правилам: они должны начинаться с буквы или подчеркивания, за которыми следуют буквы, цифры или подчеркивание.
  • Избегайте использования в идентификаторах специальных символов(кроме подчеркивания).
  • Проверьте наличие зарезервированных ключевых слов и воздержитесь от их использования в качестве идентификаторов.
  • Проверьте кодировку файла исходного кода, если вы подозреваете проблемы с кодировкой.

Вот пример исправления недопустимого символа SyntaxError в идентификаторе в Python:

def check(x):
    if x in range(4, 9):
        print("%s in the range" % str(x))
    else:
        print("not in the range")
check(5)

После написания приведенного выше кода выходные данные будут отображаться как «5 в диапазоне», как только вы его распечатаете. Check(5) был перепечатан, и недопустимый символ SyntaxError в идентификаторе в Python устранен.

Посмотрите на скриншот ниже: ошибка: недопустимый символ в идентификаторе в Pyhton устранен.

Устранение ошибки

SyntaxError: ошибка недопустимого символа »'(u+201c)

«Синтаксическая ошибка: недопустимый символ ‘»'(u+201c) в Python» обычно возникает, когда мы скопировали код из таких источников, как текстовые процессоры, PDF-файлы или веб-страницы, в наш сценарий, и он содержит символы, которые не распознаются как допустимые.

В этом случае причиной ошибки является символ «»(Unicode U+201C), который представляет собой левую двойную кавычку.

Пример:

print(“Hello, world!”)

Проверьте приведенный ниже снимок экрана на наличие синтаксической ошибки.

SyntaxError: ошибка недопустимого символа '''(u+201c) 

Чтобы исправить эту ошибку, мы можем заменить нестандартные кавычки стандартными кавычками ASCII(«)» в нашем коде.

Пример:

print("Hello, world!")

Проверьте снимок экрана ниже на наличие неожиданных символов после разрешения символа продолжения строки.

Недопустимый символ

SyntaxError: недопустимый символ «–»(u+2013)

Это похоже на приведенную выше ошибку. Здесь у нас в коде есть внешний символ «–», и, следовательно, мы получаем ошибку: SyntaxError: недопустимый символ «–»(u+2013). Чтобы решить эту проблему, мы можем заменить его другими допустимыми символами, такими как подчеркивание.

Добавить комментарий