Введение
В этом практическом занятии (лабораторной работе) вы научитесь проверять, является ли строка допустимым идентификатором в Python. Понимание правил именования идентификаторов является важным аспектом написания чистого и корректного кода.
В данной лабораторной работе рассматриваются правила именования идентификаторов в Python, такие как: идентификатор должен начинаться с буквы или подчеркивания, может содержать буквы, цифры и подчеркивания, регистр букв имеет значение, и он не должен быть зарезервированным ключевым словом. Вы научитесь создавать переменные с допустимыми идентификаторами в скрипте Python и будете использовать метод str.isidentifier() и модуль keyword для проверки валидности идентификаторов.
Изучите идентификаторы Python
На этом этапе вы узнаете о идентификаторах в Python. Идентификаторы - это имена, используемые для обозначения переменных, функций, классов, модулей или других объектов в Python. Понимание правил именования идентификаторов является важным аспектом написания чистого и корректного кода.
Правила именования идентификаторов в Python:
- Начало с буквы или подчеркивания: Идентификатор должен начинаться с буквы (от A до Z или от a до z) или подчеркивания (_).
- Может содержать буквы, цифры и подчеркивания: После первого символа идентификатор может содержать буквы, цифры (от 0 до 9) и подчеркивания.
- Регистр имеет значение: Идентификаторы в Python чувствительны к регистру, то есть
myVariableиmyvariableрассматриваются как разные идентификаторы. - Не могут быть зарезервированными ключевыми словами: Идентификаторы не могут быть зарезервированными ключевыми словами Python (например,
if,else,for,while,def,class,import,return,True,False,None).
Рассмотрим примеры допустимых и недопустимых идентификаторов:
Допустимые идентификаторы:
my_variable_my_variablemyVariableMY_VARIABLEvariable123
Недопустимые идентификаторы:
123variable(начинается с цифры)my-variable(содержит дефис)my Variable(содержит пробел)if(зарезервированное ключевое слово)
Теперь давайте потренируемся создавать переменные с допустимыми идентификаторами в скрипте Python.
Откройте редактор VS Code в среде LabEx.
Создайте новый файл с именем
identifiers.pyв директории~/project.cd ~/projectВ файле
identifiers.pyдобавьте следующий код:## Valid identifiers my_variable = 10 _my_variable = 20 myVariable = 30 MY_VARIABLE = 40 variable123 = 50 ## Printing the values print(my_variable) print(_my_variable) print(myVariable) print(MY_VARIABLE) print(variable123)Сохраните файл.
Запустите скрипт с помощью команды
python:python identifiers.pyВы должны увидеть следующий вывод:
10 20 30 40 50
Это упражнение показывает, как создавать переменные с допустимыми идентификаторами и выводить их значения. Понимание этих правил поможет вам избегать синтаксических ошибок и писать более читаемый код.
Используйте str.isidentifier()
На этом этапе вы узнаете, как использовать метод str.isidentifier() в Python для проверки, является ли строка допустимым идентификатором. Этот метод представляет собой удобный способ программной валидации имен идентификаторов.
Метод str.isidentifier() возвращает True, если строка является допустимым идентификатором согласно определению языка Python, и False в противном случае.
Создадим скрипт Python для проверки различных строк на предмет того, являются ли они допустимыми идентификаторами.
Откройте редактор VS Code в среде LabEx.
Создайте новый файл с именем
check_identifier.pyв директории~/project.cd ~/projectВ файле
check_identifier.pyдобавьте следующий код:## Examples of strings to test valid_identifier = "my_variable" invalid_identifier_start_with_number = "123variable" invalid_identifier_with_space = "my variable" invalid_identifier_with_hyphen = "my-variable" keyword_identifier = "if" valid_identifier_with_underscore = "_my_variable" ## Using str.isidentifier() to check if the strings are valid identifiers print(f"'{valid_identifier}' is a valid identifier: {valid_identifier.isidentifier()}") print(f"'{invalid_identifier_start_with_number}' is a valid identifier: {invalid_identifier_start_with_number.isidentifier()}") print(f"'{invalid_identifier_with_space}' is a valid identifier: {invalid_identifier_with_space.isidentifier()}") print(f"'{invalid_identifier_with_hyphen}' is a valid identifier: {invalid_identifier_with_hyphen.isidentifier()}") print(f"'{keyword_identifier}' is a valid identifier: {keyword_identifier.isidentifier()}") print(f"'{valid_identifier_with_underscore}' is a valid identifier: {valid_identifier_with_underscore.isidentifier()}")Этот скрипт определяет несколько строк и использует метод
isidentifier()для проверки, является ли каждая строка допустимым идентификатором Python. Затем результаты выводятся в консоль.Сохраните файл.
Запустите скрипт с помощью команды
python:python check_identifier.pyВы должны увидеть следующий вывод:
'my_variable' is a valid identifier: True '123variable' is a valid identifier: False 'my variable' is a valid identifier: False 'my-variable' is a valid identifier: False 'if' is a valid identifier: False '_my_variable' is a valid identifier: True
Этот вывод показывает результаты работы метода isidentifier() для каждой строки. Как вы можете видеть, метод правильно определяет допустимые и недопустимые идентификаторы на основе правил именования Python.
Проверка с использованием модуля keyword
На этом этапе вы узнаете, как использовать модуль keyword в Python для проверки, является ли строка ключевым словом Python. Ключевые слова - это зарезервированные слова, имеющие специальное значение в Python и не могут быть использованы как идентификаторы.
Модуль keyword предоставляет функцию iskeyword(), которая проверяет, является ли заданная строка ключевым словом Python.
Создадим скрипт Python для проверки различных строк на предмет того, являются ли они ключевыми словами.
Откройте редактор VS Code в среде LabEx.
Создайте новый файл с именем
check_keyword.pyв директории~/project.cd ~/projectВ файле
check_keyword.pyдобавьте следующий код:import keyword ## Examples of strings to test keyword_string = "if" not_keyword_string = "my_variable" ## Using keyword.iskeyword() to check if the strings are keywords print(f"'{keyword_string}' is a keyword: {keyword.iskeyword(keyword_string)}") print(f"'{not_keyword_string}' is a keyword: {keyword.iskeyword(not_keyword_string)}") ## Display all keywords print("Python keywords:") print(keyword.kwlist)Этот скрипт импортирует модуль
keywordи использует функциюiskeyword()для проверки, являются ли строки"if"и"my_variable"ключевыми словами Python. Скрипт также выводит список всех ключевых слов Python с помощьюkeyword.kwlist.Сохраните файл.
Запустите скрипт с помощью команды
python:python check_keyword.pyВы должны увидеть следующий вывод:
'if' is a keyword: True 'my_variable' is a keyword: False Python keywords: ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
Этот вывод показывает, что функция keyword.iskeyword() правильно определяет "if" как ключевое слово и "my_variable" как не ключевое слово. Скрипт также выводит список всех ключевых слов Python.
Резюме
В этом практическом занятии вы узнали о идентификаторах Python и правилах, которые регулируют их именование. Эти правила предусматривают, что идентификаторы должны начинаться с буквы или подчеркивания, могут содержать буквы, цифры и подчеркивания, чувствительны к регистру и не могут быть зарезервированными ключевыми словами.
Вы практиковались в создании переменных с допустимыми идентификаторами в скрипте Python, демонстрируя правильное применение этих правил. В рамках практического занятия вы создали файл identifiers.py, присвоили значения допустимым идентификаторам и вывели эти значения в консоль.



