Python: задачки и вопросы
前往频道在 Telegram
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/media
显示更多7 128
订阅者
-424 小时
+87 天
-230 天
帖子存档
В этом коде возникает TypeError потому что метод sort() в Python не может сравнивать числа разных типов — в данном случае целые числа (4, 5) и комплексное число 1j.
Когда Python пытается отсортировать этот список, он должен сравнить элементы между собой, чтобы определить их порядок. Однако у нас нет встроенного способа сравнить целое число с комплексным числом, так как это математически не имеет смысла.
Или если бы вы хотели сортировать по модулю комплексных чисел:
y = [4, 5, 1j]
y.sort(key=abs) # Сортировка по модулю числа
1. У вас есть список a = ['hat', 'mat', 'rat']
2. Когда вы вызываете 'rhyme'.join(a), Python:
- Берет первый элемент 'hat'
- Добавляет РАЗДЕЛИТЕЛЬ 'rhyme'
- Берет второй элемент 'mat'
- Добавляет разделитель 'rhyme'
- Берет третий элемент 'rat'
Таким образом, получается:
- 'hat' + 'rhyme' + 'mat' + 'rhyme' + 'rat' = 'hatrhymematrhymerat'
Разделитель добавляется ТОЛЬКО между элементами списка, но не в начале и не в конце. Поэтому в результате мы видим 'rhyme' только между словами, но не в начале или конце строки.
Списки изменяемы и не могут быть элементами множества, но кортежи — неизменяемы и хэшируемы, поэтому кортеж из списка успешно добавится во множество.
В коде есть глобальная переменная x = 10. В функции func() есть операция del x. Когда Python видит операцию del x внутри функции, он считает x локальной переменной этой функции. Но при этом, когда выполняется print(x), Python пытается использовать локальную переменную x, которая еще не была инициализирована (так как del x выполняется после).
@contextmanager преобразует генератор в менеджер контекста. Всё до yield выполняется при входе в with, всё после yield — при выходе. Поэтому:
- Enter → на входе
- Inside → внутри блока with
- Exit → после выхода из блока
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
