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

Лексикология — это раздел языкознания, посвящённый изучению словарного состава языка, или лексики. Она исследует слова как самостоятельные единицы языка, их значения, происхождение, употребление и взаимосвязи друг с другом. Центральной единицей лексикологии является лексема — слово как структурный элемент языка.

Типы лексем

Программа на Python представляет собой последовательность лексем следующих типов:
  • Ключевые слова (keywords)
  • Идентификаторы (identifiers)
  • Литералы (literals)
  • Операторы (operators)
  • Комментарии (comments)
Ключевые слова
Ключевые слова — это зарезервированные слова, которые имеют строго определённое значение в языке программирования и не могут быть использованы в качестве имён переменных или функций. Они формируют грамматический фундамент программы.
С лингвистической точки зрения ключевые слова схожи со служебными частями речи, так как в большинстве случаев они не выражают конкретные объекты или действия, но указывают на тип синтаксической конструкции, логические связи между блоками кода и способы управления потоком выполнения программы.
Функциональная группа
Ключевые слова
Аналогии с русским языком
Управление потоком
if, elif, else, for, while, break, continue, pass
Союзы условия и цикла, дискурсивные маркеры
Определение структуры
def, class, return, yield
Формообразующие частицы («пусть», «определим»), глаголы («вернуть», «выдавать»)
Работа с модулями
import, from, as, global, nonlocal
Предлоги и союзы («из», «как»)
Обработка исключений
try, except, finally, raise, assert
Конструкции со значением попытки, перехвата ошибки
Логические операторы
and, or, not, in, is
Связующие элементы между уровнями языка
Логические константы
True, False, None
Слова «истина», «ложь», «ничто»
Асинхронность
async, await
Организация выполнения кода без блокировки
Идентификаторы
Идентификаторы — это имена объектов (переменных, функций, классов, атрибутов) в Python, которые не имеют зарезервированного значения, как ключевые слова, а задаются автором программы.
Они выполняют функцию, близкую к знаменательным частям речи в русском языке, содержа в себе основную лексическую нагрузку, обозначая сущности, действия, свойства и отношения в создаваемой программе.
Соответствие индентификаторов частям речи:
Тип идентификатора
Аналог в русском языке
Пример
Имена переменных
Имя существительное
user_count, total_price
Имена функций
Глагол / глагольное словосочетание
calculate_average(), get_name()
Имена классов
Имя собственное / заголовок
UserProfile, DatabaseConnection
Имена атрибутов
Прилагательное / притяжательная конструкция
enabled, user.name
Именно идентификаторы составляют постоянно пополняемый лексикон языка программирования, аналогично тому, как естественные языки наполняются новыми словами — терминами, неологизмами, именами собственными
Общие принципы именования идентификаторов

  • Идентификатор может состоять из букв латинского алфавита (a–z, A–Z), арабских цифр (0–9) и символа/символов нижнего подчёркивания (_)
  • Не может начинаться с цифры
  • Регистр букв имеет значение и различает идентификаторы (например, User и user — разные имена)
  • Имена не могут совпадать с ключевыми словами и встроенными именами
Литералы
Литералы представляют собой фиксированные значения в коде программы, не требующие вычисления или обращения к переменной.
С лингвистической точки зрения литералы аналогичны числительным, местоимениям и наречиям в русском языке.

Таблица типов литералов:
Тип литерала
Примеры
Аналогия в русском языке
Числовые (целые, вещественные, комплексные)
5, 3.14, 1+2j
Имя числительное (обозначает количество или величину)
Строковые
"привет", 'hello'
Имя существительное в именительном падеже / цитата
Булевые
True, False
Слова «истина», «ложь» / краткие прилагательные «верно», «неверно»
Специальный объект
None
Отрицательное местоимение («никто», «ничто») / частица «не»
Операторы и разделители
Операторы (+, -, *, /, ==, !=, and, or, in, is и другие) и разделители (скобки, запятые, двоеточия, точки) с позиции лексико-грамматического анализа представляют собой служебные лексемы, которые не обладают самостоятельным лексическим значением, но выполняют важнейшие грамматические функции: связывают знаменательные лексемы (идентификаторы и литералы) в осмысленные конструкции, задают структуру программы и выражают логические, арифметические и иные отношения между элементами.
Комментарии
Комментарии в Python начинаются с символа решётки (#) и игнорируются интерпретатором. Они предназначены исключительно для человека, читающего код, и служат для пояснения логики, указания авторства, временного отключения фрагментов или добавления меток (например, TODO).
С лингвистической точки зрения комментарии представляют собой метатекст — высказывания о самом тексте, не входящие в его основное содержание, но помогающие его пониманию.
В русском языке аналогами комментариев выступают сноски, примечания на полях, пояснения в скобках, а также метатекстовые обороты типа «как было сказано выше», «заметим, что». Они не влияют на фактологическую информацию, но облегчают восприятие и интерпретацию.

Пример кода с комментариями:
# Это комментарий. Интерпретатор его игнорирует.
# Он объясняет, что делает следующий код:

temperature = -5 # переменная temperature хранит значение температуры

if temperature < 0: # если температура ниже нуля
print("Холодно") # выводим сообщение "Холодно"