Параллельное Исполнение в Python с Помощью Модуля threading
В данном посте, вы узнаете, как использовать модуль threading для создания параллельных потоков выполнения и улучшения производительности ваших приложений.
threading позволяет создавать легковесные потоки, которые выполняются параллельно, ускоряя выполнение задач. Это особенно полезно в сценариях, где есть задачи, которые можно выполнить независимо друг от друга.
Пример:
import threading
import time
# Функция, которую будем выполнять в параллельных потоках
def print_numbers():
for i in range(5):
time.sleep(1) # Эмулируем длительную операцию
print(f"Thread {threading.current_thread().name}: {i}")
# Создаем два потока
thread1 = threading.Thread(target=print_numbers, name="Thread 1")
thread2 = threading.Thread(target=print_numbers, name="Thread 2")
# Запускаем потоки
thread1.start()
thread2.start()
# Ожидаем завершения потоков перед завершением программы
thread1.join()
thread2.join()
print("Главный поток выполнения завершен.")
В данном примере создаются два потока, каждый из которых выполняет функцию print_numbers, эмулируя длительную операцию с использованием time.sleep. Запуск потоков осуществляется с помощью метода start(), и главный поток ожидает их завершения с использованием метода join().
Модуль threading предоставляет удобные средства для работы с параллельными потоками в Python, что позволяет улучшить производительность приложений. Однако, следует быть внимательными при работе с потоками из-за потенциальных проблем с блокировками и синхронизацией данных. Попробуйте интегрировать threading в свой код и ускорьте выполнение задач!
💻
#python#threading
#Вакансия#job#Аналитик#Remote#Data#SQL#Python
🔎 Вакансия: Product Data Analyst (SQL + Python)
💰 ЗП: 3000-3500$ (до вычета)
🌍 Формат: Full time, удаленно из любой точки мира
📍 Локация компании: Сербия
📌Компания CyberYozh - разработка ПО, обучающих материалов и решений для защиты данных в сети
📋 Основные задачи:
- Анализировать данные проектов для выявления ключевых показателей и трендов
- Настраивать систему получения и обработки данных (SQL, API)
- Выявлять аномалии и готовить аналитические отчёты
- Работать с дашбордами (Looker Studio, GA, Яндекс Метрика)
- Проверять гипотезы и A/B-тесты
🛠 Требования:
- Опыт написания оптимизированных SQL-запросов (PostgreSQL, MySQL)
- Владение Python для анализа данных (pandas, numpy) и автоматизации процессов
- Опыт работы с API и автоматизацией отчётности
- Навыки настройки аналитических систем и построения дашбордов
- Умение работать с метриками, когортами, retention, LTV
🎯 Мы предлагаем:
- Гибкий график и удаленную работу из любой точки мира
- Долгосрочный проект и своевременные выплаты.
- 28 дней оплачиваемого отпуска.
- Минимум бюрократии.
- Регулярные performance review с возможностью роста з/п.
- Сильная команда и здоровая рабочая атмосфера.
📩 Контакт для связи: @hr_olga_osipova
#вакансия#backend#python#senior#удаленно#Сербия
Middle + / Senior Backend разработчик
(удаленно / гибрид, офисы в Белграде и Бангкоке)
О компании
Graphlogic – продуктовая IT-компания. Мы разрабатываем экосистему Conversational AI продуктов – чат-боты, голосовые боты, аватары, ASR & TTS as APIs, LLM – объединенных на единой платформе.
🚀 Развиваем международное направление при поддержке швейцарского инвестора и партнёра. В команду ищем опытного Middle+ / Senior Backend разработчика – того, кто хочет делать коммерческий продукт, который будет использоваться бизнесом по миру.
Чем предстоит заниматься
– Проектировать и разрабатывать компоненты платформы
– Участвовать в проектировании решений с момента разработки концепта и составления плана реализации
– Отвечать за конечную реализацию фич в срок, включая разрешение блокеров, своевременную эскалацию проблем и запрос дополнительных ресурсов
– Улучшать масштабируемость, производительность и надежность продукта
– Взаимодействовать с проектной командой по реализации требований для повышения функциональности и UX платформы.
Стек: Python, asyncio, aiohttp, GraphQL, PostgreSQL, RabbitMQ, Docker, Kubernetes, Gitlab (VCS, CI/CD, Registry).
Навыки, которые мы ожидаем увидеть
– Опыт работы на стеке от 3 лет
– Уверенное владение английским
– Разработка архитектуры системы – обязательный уклон в микросервисы, понимание горизонтально масштабируемых систем
– Разработка архитектуры БД
– Глубокое понимание принципов объектно-ориентированного подхода
Минимальные требования по опыту
– Асинхронный питон, микросервисы, postgres – 3 года
– RabbitMQ – 1 год
– Общий опыт работы разработчиком – от 5 лет.
Работа у нас – это:
– Гибкий график
– Официальное трудоустройство, административная и юридическая поддержка
– Офисы в Белграде и Бангкоке или полностью удалённый формат
– Больничные без справок - 3 оплачиваемых wellness дня в год
– Участие в конференциях и митапах.
По всем вопросам и для резюме: @dpmorozova
#webScraping#Python
🕷
Web Scraping with Python: Data Extraction from the Modern Web, 3rd Edition
✏️Ryan Mitchell
-----
Main channel: @repo_science
Coupons: @freecoupons_reposcience
-----
#Python#webscraping
😎
Automate the Boring Stuff with Python Programming
Automate the Boring Stuff with Python was written for people who want to get up to speed writing small programs that do practical tasks as soon as possible. You don’t need to know sorting algorithms or object-oriented programming, so this course skips all the computer science and concentrates on writing code that gets stuff done.
- Web scraping
- Parsing PDFs and Excel spreadsheets
- Automating the keyboard and mouse
- Sending emails and texts
- And several other practical topics
⚖️10.5 GB
🔗Link
-----
Main channel:@repo_science
Coupons: @freecoupons_reposcience
-----
#excel#python
🐍
Using Python with Excel
Take your Excel skills further by using Python. Discover how to inspect, filter, clean, convert, and visualize data with Excel and Python libraries like pandas and openpyxl.
🗣 Anthony Sagely
📆2019-10-31
⌚️1h 22m
🔗Link
-----
Main channel: @repo_science
Coupons: @freecoupons_reposcience
-----