Ответ
Хотя в Python почти всё является объектом (числа, строки, функции, классы), некоторые фундаментальные элементы языка объектами не являются, так как они определяют саму структуру и грамматику языка.
К ним относятся:
-
Ключевые слова (Keywords)
- Это зарезервированные слова, которые управляют потоком выполнения. Они не представляют данные и не могут быть присвоены переменным.
- Примеры:
if
,else
,for
,while
,def
,class
,import
.
-
Операторы (Operators)
- Сами по себе операторы (
+
,-
,*
,=
) — это синтаксический сахар для вызова специальных методов объектов (magic methods). - Например, выражение
a + b
на самом деле вызывает методa.__add__(b)
.
- Сами по себе операторы (
-
Синтаксические конструкции
- Элементы синтаксиса, такие как отступы, скобки
()
, квадратные скобки[]
, и двоеточия:
, определяют структуру кода, но не являются объектами.
- Элементы синтаксиса, такие как отступы, скобки
# Число — это объект класса 'int'
num = 42
print(isinstance(num, object)) # Вывод: True
# Функция — это объект класса 'function'
def my_func():
pass
print(isinstance(my_func, object)) # Вывод: True
# Попытка использовать ключевое слово как объект вызовет SyntaxError
# isinstance(if, object)