Метод
concurrent.futures.as_completed()
позволяет обрабатывать завершение асинхронных задач в порядке их завершения. Это полезно для параллельной обработки, где важно начать работу с результатами, как только они готовы.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤🔥1
Пояснение
f-строки – удобный способ отображения информации в нужном формате. Здесь на место {name} подставляется переменная name, а на место {age / 10:.5f} переменная age, деленная на 10. В форматировании указано представление с 5 знаками после запятой.
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1
👍12
Узнай свой грейд и зарплату — бесплатно
1. Переходи в бота ШОРТКАТ @shortcut_python_bot
2. Бронируй удобный слот на индивидуальную встречу для тестирования
3. Проходи тест
4. Сразу же на звонке узнаешь свой грейд и з/п в рынке — на основе опыта менторов из бигтеха
Всё просто, даже добавить нечего
Пройти тестирование в ШОРТКАТ ➡️ @shortcut_python_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqxRdUBv
1. Переходи в бота ШОРТКАТ @shortcut_python_bot
2. Бронируй удобный слот на индивидуальную встречу для тестирования
3. Проходи тест
4. Сразу же на звонке узнаешь свой грейд и з/п в рынке — на основе опыта менторов из бигтеха
Всё просто, даже добавить нечего
Пройти тестирование в ШОРТКАТ ➡️ @shortcut_python_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqxRdUBv
👍4🔥2
Метод
inspect.getmembers()
из модуля inspect
позволяет получить список всех членов объекта, включая методы, атрибуты и встроенные свойства. Это полезно для анализа структуры классов и объектов во время выполнения.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥3💯2
Как работает Python GIL (Global Interpreter Lock), почему он существует, и как его влияние можно минимизировать?
Ответ
Хотя GIL ограничивает параллелизм в многопоточных задачах, он не влияет на многопроцессные программы. Его влияние можно минимизировать, используя:
• Многопроцессный подход через модуль multiprocessing.
• Вызовы низкоуровневого кода (например, библиотеки C, освобождающие GIL).
• Асинхронное программирование (asyncio) для задач ввода-вывода.
Пример использования
import threading
counter = 0
def increment():
global counter
for _ in range(1000000):
counter += 1
threads = [threading.Thread(target=increment) for _ in range(2)]
for thread in threads:
thread.start()
for thread in threads:
thread.join()
print("Итоговый счётчик:", counter) # Результат может быть меньше 2000000 из-за GIL
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥4🎉2
Метод
shutil.disk_usage()
из модуля shutil
предоставляет информацию о месте на диске, включая общий объём, используемое и доступное пространство. Это полезно для мониторинга состояния файловой системы.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤🔥4💯4
Класс
concurrent.futures.ThreadPoolExecutor
из модуля concurrent.futures
позволяет легко создавать и управлять пулом потоков для выполнения задач параллельно. Это особенно полезно для выполнения нескольких операций ввода-вывода или вычислений, которые могут быть распределены между несколькими потоками.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13😱4🏆2
Метод
itertools.permutations()
генерирует все возможные перестановки элементов заданной последовательности. Это полезно для задач, связанных с комбинаторикой.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤🔥1
Пояснение
Функция map применяет лямбда-функцию lambda x: x ** 2 к каждому элементу списка numbers, возводя его в квадрат. Возвращается объект map, который преобразуется в список с помощью list(squared). Код выполняется корректно.
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
👍9😢4😁1🤔1
Метод
__slots__
позволяет явно указать, какие атрибуты может иметь объект класса, что значительно уменьшает потребление памяти и ускоряет доступ к атрибутам. Это особенно полезно при создании большого количества экземпляров класса.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22❤🔥1
Как работает
weakref
в Python, и когда его стоит использовать?Ответ
Пример использования
import weakref
class Data:
def __del__(self):
print("Объект удалён")
obj = Data()
weak_ref = weakref.ref(obj)
print(weak_ref()) # <__main__.Data object at 0x...>
del obj
print(weak_ref()) # None (объект удалён)
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤🔥1
range(len())
вместо enumerate()
В Python часто используют
range(len(lst))
для итерации по списку с индексами, но это снижает читаемость кода и не является идиоматичным способом перебора элементов.enumerate()
, который позволяет одновременно получать индекс и значение элемента, делая код более читаемым и питоничным.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍47😱5❤🔥3🍾1
Метод
dis.Bytecode()
из модуля dis
позволяет анализировать байт-код Python-функций. Это полезно для оптимизации кода и понимания его работы на уровне интерпретатора.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥2
Пояснение
Множество (set) в Python хранит только уникальные элементы, поэтому дубликаты 3 и 4 автоматически удаляются при создании numbers. Операция add(3) не изменяет множество, так как 3 уже в нём есть. Операция remove(2) удаляет 2 из множества. Код выполняется корректно.
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥2
Ответ:
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