Как Python выбирает модуль при импорте, если одинаковое имя есть в нескольких каталогах?
База Hintsage
Python Core
Типы, области видимости, функции, модули и базовая семантика.
Практика
Вопросы: Python Core
Дескриптор classmethod при обращении через экземпляр: какой объект получает его функция первым аргументом?
Представьте, что атрибут класса должен вычисляться при каждом чтении и проверять значение при записи: какой механизм Python обеспечивает такое поведение?
Какие последствия имеет использование NaN как элемента множества в Python?
В обработчике исключения нужно записать событие и передать то же исключение вызывающему коду без изменения исходной трассировки. Какой механизм Python следует применить?
При нескольких подходящих блоках обработки как Python выбирает блок except для возникшего исключения?
Практическая ситуация: в публичной функции часть параметров нужно запретить передавать позиционно. Каким механизмом Python это обеспечивает?
Определите, какой список напечатает программа и зачем в конструкции try нужен отдельный блок else.
steps = []
try:
steps.append("try")
result = 10 // 2
except ZeroDivisionError:
steps.append("except")
else:
steps.append(f"else:{result}")
finally:
steps.append("finally")
print(steps)
Разберите практический результат импорта: какое имя появится в глобальной области видимости после выполнения кода и почему обращение к sax завершится ошибкой?
import xml.sax
print(xml.__name__)
try:
print(sax.__name__)
except NameError:
print("NameError")
Модуль должен лениво вычислять значение отсутствующего атрибута при обращении к нему. Какой механизм Python позволяет это реализовать?
Разбор последствий: при каких условиях ссылка на ещё не объявленный класс в аннотации функции вызовет ошибку уже во время объявления функции?
Практическая ситуация: два экземпляра класса неожиданно видят изменения одного изменяемого атрибута; какой механизм Python это объясняет?
При множественном присваивании Python сначала вычисляет правую часть целиком или записывает значения по мере разбора левых целей?
В проверке результата Python почему is нельзя использовать вместо == для сравнения значений?
Как объяснить ситуацию, при которой операция += над кортежем изменяет вложенный список, но завершается ошибкой?
В библиотеке декоратор заменяет функцию обёрткой, из-за чего теряются её имя и документация. Какой стандартный механизм Python сохраняет эти метаданные?
Практическая ситуация: после поверхностного копирования вложенного списка изменение внутреннего списка отражается в оригинале. Какой механизм Python это объясняет?
При вызове функции одно имя параметра передано одновременно позиционно и по ключу: какое правило связывания аргументов определяет результат?
Практическая ситуация: класс использует слоты без словаря экземпляра. Что произойдёт при добавлении экземпляру атрибута, не объявленного среди слотов?
При совпадении хешей у двух ключей словаря как Python определяет, занимают ли они одну запись?
Показано 1–20 из 50