Python на примерах
1.39K subscribers
411 photos
6 videos
145 links
Короткие уроки Python на примерах
Download Telegram
🧵 Что делают потоки прямо сейчас?
s‍ys._current_frames() покажет стек вызовов всех активных потоков. Очень кстати при отладке многопоточного кода.
👍2
📊 os.getloadavg() — нагрузка под контролем
Показывает среднюю загрузку системы за 1, 5 и 15 минут. Отличный способ следить за состоянием CPU в реальном времени.
👍3
🎯 any() — нашёл и хватит
Функция any() возвращает True, как только встречает первый «истинный» элемент в коллекции.

values = [0, None, '', 5]
if any(values):
print("Есть хотя бы одно значение!")


Полезно, когда нужно быстро проверить, есть ли что-то «живое» в списке.
⏳ timeit — измерим время!
timeit позволяет точно замерить, сколько времени занимает выполнение куска кода. Отлично для микрооптимизаций.

import timeit
print(timeit.timeit("sum(range(1000))", number=1000))


Используйте, чтобы сравнивать подходы и ускорять код.
🧠 ИИ на Python за 10 строк
Базовая модель классификации текста с помощью scikit-learn — всё просто и понятно.

from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB

texts = ["я люблю Python", "ненавижу баги", "Python — это круто"]
labels = [1, 0, 1] # 1 — положительно, 0 — отрицательно

vec = CountVectorizer()
X = vec.fit_transform(texts)

model = MultinomialNB()
model.fit(X, labels)

print(model.predict(vec.transform(["обожаю Python"]))) # [1]


📌 Что делает код:
Создаёт простую модель наивного байесовского классификатора, обученную на коротких фразах. Вы можете расширить датасет и сделать свой мини‑анализатор настроения.
🔥1
[rich.print()] — быстрый способ добавить цвета, стиль и структуру в консоль. Текст, таблицы, логи — всё выглядит на уровне. Отличный инструмент, чтобы терминал не был скучным.


Документация
Управление умным домом через Telegram-бота на Python

Создайте Telegram-бота, который позволит вам управлять устройствами умного дома — светом, термостатом и не только — прямо из чата.

Что получаетe:
- Управление устройствами из любой точки мира
- Быстрый доступ без лишних приложений -просто отправьте команду боту
👍1
contextlib.suppress() — контекстный менеджер, который временно подавляет указанные исключения.
Отличная замена try-except, когда ошибку можно просто пропустить без обработки.

Документация
gc.freeze() — замораживает текущие объекты в памяти,
исключая их из дальнейших сборок мусора.

🔥 Отлично подходит для оптимизации долгоживущих процессов,
например, серверов или CLI-инструментов, снижая нагрузку на GC.

Документация
Автоматическая смена обоев в зависимости от погоды с помощью Python

Этот лайфхак поможет менять обои на рабочем столе в реальном времени, основываясь на погоде в вашем регионе.

Используем API прогноза погоды и скрипт на Python для управления обоями.

Немного автоматизации и настроения и ваш рабочий стол всегда подстраивается под погоду!
👍3
Создаём простой командный чат-бот на Python для локального управления файлами

Этот лайфхак поможет быстро собрать чат-бота, который принимает текстовые команды и управляет файлами на вашем компьютере:
- показывает список файлов
- читает содержимое
- удаляет ненужные файлы

Такой бот — удобный инструмент для локальной автоматизации и практики работы с файлами через чат.
👍1
Path.resolve() из pathlib — возвращает абсолютный путь,
автоматически разворачивая символические ссылки и относительные сегменты.

📂 Удобно, когда нужно точно определить местоположение файла или папки.


Документация
👍1
threading.excepthook() — ловит исключения из потоков,
позволяя логировать ошибки и избежать внезапного краша программы.

Очень полезно для стабильности многопоточных приложений.

Документация
Простая игра "Угадай число" с подсказками на Python

python
import random

number = random.randint(1, 100)
print("Угадайте число от 1 до 100!")

while True:
guess = int(input("Ваш вариант: "))
if guess < number:
print("Слишком мало! Попробуйте ещё.")
elif guess > number:
print("Слишком много! Попробуйте ещё.")
else:
print("Поздравляю! Вы угадали!")
break


Отдохните и потренируйте логику - классика жанра в пару строк кода.
👍1
Отправка email с вложением через Python

import smtplib
from email.message import EmailMessage

def send_email(subject, body, to, attachment_path=None):
msg = EmailMessage()
msg['Subject'] = subject
msg['From'] = "your_email@example.com"
msg['To'] = to
msg.set_content(body)

if attachment_path:
with open(attachment_path, 'rb') as f:
file_data = f.read()
file_name = attachment_path.split('/')[-1]
msg.add_attachment(file_data, maintype='application', subtype='octet-stream', filename=file_name)

with smtplib.SMTP_SSL('smtp.example.com', 465) as smtp:
smtp.login("your_email@example.com", "your_password")
smtp.send_message(msg)

send_email("Привет!", "Это тестовое письмо.", "friend@example.com", "path/to/file.txt")


Отправляйте письма с вложениями напрямую из Python - удобно для автоматизации.
🤔5👍1
Создаём своего голосового ассистента на Python с помощью ИИ

Простой способ сделать помощника, который понимает голос и отвечает вам. Он использует технологии распознавания речи, обработку языка и синтез речи для живого общения.

Как это устроено:

1. Слушаем команду и переводим речь в текст.
2. Анализируем запрос через NLP-модель и формируем ответ.
3. Отвечаем голосом с помощью синтеза речи.
❤2
🤖 Автоматизация задач с pyautogui

Управляй мышью и клавиатурой, делай скриншоты и кликай по экрану и всё программно

import pyautogui

pyautogui.moveTo(100, 100, duration=0.5)
pyautogui.click()
pyautogui.write('Hello, Automation!', interval=0.1)

📦 Установка: pip install pyautogui
🚀 Отлично для автоматизации рутинных задач и тестирования GUI.
👍1
Использование Python для преобразования рукописного текста в печатный

Этот лайфхак поможет вам с помощью Python распознать и конвертировать рукописный текст в печатный формат — удобно для оцифровки заметок и работы с рукописными файлами.

Как это работает:

1. Загрузка изображения — скрипт принимает картинку с рукописным текстом.
2. Обработка изображения — переводит в оттенки серого и улучшает контраст для точного распознавания.
3. Распознавание текста — с помощью Tesseract OCR извлекает текст из изображения.
🔥3👍1
Автоматизация создания мемов на Python

С помощью этого лайфхака вы быстро сделаете мемы из своих картинок и текста — легко добавляйте надписи, настраивайте стиль и сохраняйте результат.

Как это работает:

1. Загрузка изображения — получаем картинку по URL.
2. Добавление текста — вписываем верхний и нижний текст для мема.
3. Рисование текста — накладываем текст с нужным шрифтом и оформлением.
4. Сохранение — сохраняем готовый мем в файл.
👍1
gc.get_stats() возвращает подробную статистику о работе сборщика мусора, включая число собранных объектов на разных этапах. Это отличный инструмент для мониторинга и оптимизации управления памятью в ваших Python-приложениях.