Классы типа str
или type
>>> type("pear")
<class 'str'>
>>> type(str)
<class 'type'>
доступны в Python:
>>> str
<class 'str'>
>>> type
<class 'type'>
Однако function
классов и builtin_function_or_method
не являются.
>>> def foo(): pass
...
>>> type(foo)
<class 'function'>
>>> type(print)
<class 'builtin_function_or_method'>
Они отображаются как встроенные классы, но при попытке доступа к ним они вызывают ошибки имен:
>>> function
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'function' is not defined
>>> builtin_function_or_method
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'builtin_function_or_method' is not defined
Что особенного в function
и builtin_function_or_method
?