Ответ:
Anonymous Quiz
65%
{1, 3, 4, 5}
11%
{1, 2, 3, 4, 5}
12%
{1, 2, 3, 3, 4, 4, 5}
12%
Ошибка выполнения
👍18😢4💔1
Встроенная функция
__import__()
позволяет динамически импортировать модули во время выполнения программы. Это полезно, когда имя модуля заранее неизвестно или зависит от условий.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥2
Метод
sys._getframe()
позволяет получить объект текущего или родительского стека вызовов. Это полезно для отладки, анализа кода и динамического доступа к локальным переменным.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥2❤🔥1
Метод
gc.get_objects()
из модуля gc
позволяет получить список всех объектов, отслеживаемых сборщиком мусора в Python. Это полезно для анализа утечек памяти и отладки.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤🔥1
Метод
importlib.reload()
позволяет повторно загрузить модуль во время выполнения программы. Это полезно для динамической перезагрузки кода без необходимости перезапуска интерпретатора.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥3❤🔥1
Метод
sys.addaudithook()
позволяет отслеживать определённые события в Python, такие как импорт модулей, вызовы системных функций и доступ к ресурсам. Это полезно для мониторинга безопасности и отладки.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥2
Метод
signal.setitimer()
позволяет устанавливать таймер, который автоматически отправляет сигнал процессу через заданные интервалы времени. Это полезно для периодического выполнения кода без создания потоков.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥3❤🔥1🤔1
Как работает cooperative
multitasking
в Python, и почему asyncio не использует потоки?Ответ
Асинхронность полезна для операций ввода-вывода (сетевые запросы, работа с файлами), так как позволяет одной задаче выполняться, пока другая ждёт результата.
Пример использования
import asyncio
async def task(name, delay):
await asyncio.sleep(delay)
print(f"Задача {name} завершена")
async def main():
await asyncio.gather(task("A", 2), task("B", 1))
asyncio.run(main())
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤🔥1
В Python опасно использовать изменяемые объекты (списки, словари, множества) как значения по умолчанию в аргументах функций. Это приводит к непредсказуемому поведению, так как объект создаётся один раз при определении функции и сохраняет своё состояние между вызовами.
None
в качестве значения по умолчанию и создавайте новый объект внутри функции.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26❤🔥4😁2🔥1
Метод
threading.Timer()
позволяет создавать таймеры, которые выполняют определенную функцию через заданный интервал времени. Это полезно для отложенного выполнения задач без блокировки основного потока.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24🔥1
Метод
functools.singledispatch
позволяет создавать перегруженные функции на основе типа первого аргумента. Это полезно для написания обобщённого кода без сложных if isinstance(...)
.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤🔥1
Метод
sys.setprofile()
позволяет установить функцию профилирования, которая вызывается при каждом вызове, возврате или исключении в Python-коде. Это полезно для отладки, анализа производительности и трассировки выполнения кода.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥1
Как работает copy-on-write (COW) в Python и в каких случаях он применяется?
Ответ
Это помогает эффективно использовать память при работе с процессами, но может привести к неожиданным накладным расходам, если изменять большие объёмы данных после fork().
Пример использования
import os
data = [1] * 10**6 # Большой список
pid = os.fork()
if pid == 0: # Дочерний процесс
data[0] = 42 # Копирование происходит только здесь!
print("Дочерний процесс завершён")
else:
print("Родительский процесс")
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
Пояснение
Функция enumerate() нумерует элементы списка. Параметр start=1 задаёт начало нумерации с 1, а не с 0, поэтому вывод будет 1 a, 2 b, 3 c. Код выполняется корректно.
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥2
👍16🎉3🏆2
contextlib.ExitStack
позволяет управлять несколькими контекстными менеджерами динамически.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
pathlib.Path.read_text()
— удобный способ прочитать содержимое текстового файла в строку. Этот метод автоматически открывает файл, читает его содержимое и закрывает его после чтения.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥3
Тест: узнай свой грейд и зарплату
1. Переходи в бота ШОРТКАТ @shortcut_py_bot
2. Ответь на пару вопросов о своём опыте работы
3. В зависимости от опыта команда сервиса предложит формат оценки грейда — тестирование или полноценное мок-интервью с опытным ментором
4. После ты узнаешь свой грейд и з/п в рынке — на основе опыта разработчиков из бигтеха
Если опыта работы у тебя совсем нет, можно попробовать пройти, но лучше тест сработает на тех, кто уже работает в разработке.
Пройти тестирование в ШОРТКАТ ➡️ @shortcut_py_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqxDrfCh
1. Переходи в бота ШОРТКАТ @shortcut_py_bot
2. Ответь на пару вопросов о своём опыте работы
3. В зависимости от опыта команда сервиса предложит формат оценки грейда — тестирование или полноценное мок-интервью с опытным ментором
4. После ты узнаешь свой грейд и з/п в рынке — на основе опыта разработчиков из бигтеха
Если опыта работы у тебя совсем нет, можно попробовать пройти, но лучше тест сработает на тех, кто уже работает в разработке.
Пройти тестирование в ШОРТКАТ ➡️ @shortcut_py_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqxDrfCh
👍3❤🔥1
sys.call_tracing()
позволяет выполнить функцию с заданными аргументами, включая трассировку вызовов, установленную через sys.settrace()
. Это полезно для профилирования и отладки.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🤔1
Пояснение
Функция filter() применяет лямбда-функцию lambda x: x % 2 == 0, оставляя только чётные числа. В результате получаем [2, 4, 6]. Код выполняется корректно.
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2