Ghostly Python
9.03K subscribers
535 photos
24 videos
599 links
Погружаемся в мир Python: задачи, фишки, библиотеки и террабайты полезного материала.

Сотрудничество: @heywan_n1

Цены: @heywan_media

Реклама на бирже: https://telega.in/c/+IOa15XDNbxRkYzNi
Download Telegram
📱 Фишка: threading.Timer — запуск кода с задержкой

Позволяет выполнить функцию через заданный промежуток времени в отдельном потоке. Полезно для отложенных операций, напоминаний, автоматических задач.

import threading  

def say_hello():
print("Привет через 5 секунд!")

# Запускаем функцию через 5 секунд
timer = threading.Timer(5.0, say_hello)
timer.start()

print("Ожидаем...")


📌 Как это работает?

🟢 threading.Timer(delay, function) создаёт таймер с задержкой delay в секундах.
🟢 .start() запускает таймер в фоновом потоке.
🟢 Полезно для отложенного выполнения без блокировки основного потока

🐍 Ghostly Python | #фишки
Please open Telegram to view this post
VIEW IN TELEGRAM
71
Please open Telegram to view this post
VIEW IN TELEGRAM
😴174👍2😁2🔥1
⚙️ Автоматизация Excel-задач с помощью openpyxl

openpyxl — мощная библиотека для чтения и записи Excel-файлов (.xlsx) на Python. Подходит для автоматизации отчётов, обработки табличных данных и создания аналитических инструментов.

✔️ Установка библиотеки
pip install openpyxl


⚙️ Пример: чтение данных из Excel

from openpyxl import load_workbook  

# Загружаем существующий файл
wb = load_workbook("sales.xlsx")
ws = wb["Продажи"]

# Читаем строки
for row in ws.iter_rows(values_only=True):
print(row)


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

1. Workbook() создаёт новый Excel-файл, load_workbook() — загружает существующий.
2. ws.append() добавляет строки, ws.iter_rows() перебирает ячейки.
3. wb.save() сохраняет изменения

Полезно для бухгалтерии, аналитики, экспорта отчётов из Python-скриптов


🐍 Ghostly Python | #гайды
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥86
👩‍💻 Как собрать ДНК с помощью кода: симуляция молекулярных операций на Python

Симуляция ДНК-процессов в коде: ПЦР, сдвиги, мутации и лигирование — всё вручную, на Python и без Biopython. Вопрос один — можно ли собрать лабораторию из строк.

➡️ Ссылка на статью

🐍 Ghostly Python | #статьи
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Вопрос с собеса

В чём разница между @staticmethod и @classmethod в Python?

Пример🔽
class MyClass:
@staticmethod
def static_method():
return "Просто метод"

@classmethod
def class_method(cls):
return f"Это метод класса {cls.__name__}"

print(MyClass.static_method()) # ➔ Просто метод
print(MyClass.class_method()) # ➔ Это метод класса MyClass


Ответ🔽
@staticmethod — обычная функция, встроенная в класс. Она не получает доступ ни к экземпляру (self), ни к самому классу (cls). Используется, когда метод логически связан с классом, но не зависит от него.

@classmethod — получает в качестве первого аргумента сам класс (cls), а не экземпляр. Используется, когда метод должен знать о самом классе или создавать экземпляры (фабричные методы).

Часто @classmethod применяют для создания альтернативных конструкторов или настройки поведения, зависящего от самого класса.

❗️ Если метод не использует ни self, ни cls — делайте его @staticmethod. Если работает с самим классом, но не с экземплярами — @classmethod.


🐍 Ghostly Python | #собес
Please open Telegram to view this post
VIEW IN TELEGRAM
👍113
Please open Telegram to view this post
VIEW IN TELEGRAM
19👍2
🖼️ Библиотека: boltons

boltons — это набор тщательно отобранных утилит для Python, которые расширяют стандартную библиотеку. Полезна, когда хочется писать чище и лаконичнее, не изобретая велосипед.

ℹ️ Основные возможности:

🟢 iterutils — мощные функции для работы с итераторами.
🟢 dictutils — расширенные словари, включая OrderedMultiDict.
🟢 fileutils, timeutils, urlutils — работа с файлами, временем и URL.
🟢 Лёгкая и независимая от других зависимостей.

⚙️ Пример использования:

from boltons.iterutils import flatten  

nested = [1, [2, [3, 4], 5], 6]
flat = list(flatten(nested))
print(flat) # ➔ [1, 2, 3, 4, 5, 6]


✔️ Установка:

pip install boltons


➡️ Ссылка на документацию

🐍 Ghostly Python | #библиотеки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍74🔥1
👩‍💻 Анализ текстовых данных на примере ОМ

Проведен полный разбор текстов из сообщества «Осознанная меркантильность»: частотный анализ, темы, тональность, граф смыслов. Есть код. Есть инсайты. Волки действительно воют.

➡️ Ссылка на статью

🐍 Ghostly Python | #статьи
Please open Telegram to view this post
VIEW IN TELEGRAM
6
➡️ Python Cheatsheet — компактная, но глубокая шпаргалка по Python

Этот сайт — не просто список синтаксиса, а настоящая энциклопедия приёмов Python: от базовых конструкций до генераторов, itertools, сетевого программирования и асинхронности.

🟢 Всё на одной странице — удобно искать и скроллить.
🟢 Включает лучшие практики, “питоничные” идиомы и подводные камни.
🟢 Подойдёт и как справочник, и как учебник для освежения знаний.

⛓️ Ссылка на ресурс

🐍 Ghostly Python | #ресурсы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥43
Please open Telegram to view this post
VIEW IN TELEGRAM
😁173
📱 Фишка: sched — планировщик событий в Python

Модуль sched из стандартной библиотеки позволяет создавать простые планировщики задач с точным управлением временем. Удобен для периодических или отложенных действий без потоков.

import sched
import time

scheduler = sched.scheduler(time.time, time.sleep)

def task():
print("Задача выполнена!")

# Запланировать выполнение через 3 секунды
scheduler.enter(3, 1, task)

print("Ожидание...")
scheduler.run()


📌 Как это работает?

🟢 sched.scheduler() создаёт планировщик событий.
🟢 .enter(delay, priority, func) планирует выполнение функции через delay секунд.
🟢 .run() запускает выполнение задач по очереди

🐍 Ghostly Python | #фишки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
👩‍💻 MCP (Model Context Protocol) для неискушенных

Пытался понять, как LLM узнаёт про сервера, почему не все дружат с MCP и чем заменить консоль, если ты не Claude Desktop. Без хардкора, но с нюансами.

➡️ Ссылка на статью

🐍 Ghostly Python | #статьи
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥1
⚙️ Управление процессами на Python с помощью subprocess

subprocess — встроенный модуль Python для запуска внешних программ, выполнения команд shell и взаимодействия с процессами. Полезен при автоматизации, DevOps-скриптах и интеграции с CLI-инструментами.

✔️ Стандартная библиотека — установка не требуется

⚙️ Пример: выполнение shell-команды

import subprocess

# Выполняем команду ls (или dir на Windows)
result = subprocess.run(["ls", "-l"], capture_output=True, text=True)

# Печатаем результат
print(result.stdout)


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

1. subprocess.run([...]) запускает команду и ожидает завершения.
2. capture_output=True сохраняет вывод команды.
3. text=True возвращает результат в виде строки (а не байтов).

Отлично подходит для автоматизации сборки, запуска скриптов, управления системными утилитами и бэкапами


🐍 Ghostly Python | #гайды
Please open Telegram to view this post
VIEW IN TELEGRAM
10
Факты

🐍 Ghostly Python | #мемы
Please open Telegram to view this post
VIEW IN TELEGRAM
😁32🔥2💯1
Вопрос с собеса

Что делает оператор walrus (:=) в Python и когда его стоит использовать?

Пример🔽
# Без walrus
line = input("Введите строку: ")
while line != "":
print(f"Вы ввели: {line}")
line = input("Введите строку: ")

# С walrus
while (line := input("Введите строку: ")) != "":
print(f"Вы ввели: {line}")


Ответ🔽
Оператор "морж" (:=), добавленный в Python 3.8, позволяет присваивать значение переменной прямо внутри выражения. Это особенно полезно в циклах и условиях, где раньше приходилось писать отдельное присваивание.

Преимущества:

Позволяет избежать повторного вызова функции (например, input()).

Делает код короче и, при правильном использовании, — читаемее.

📌 Используется там, где результат выражения нужен и для логики, и для сохранения значения.

❗️ Не стоит злоупотреблять: если конструкция становится нечитаемой — лучше использовать обычное присваивание.


🐍 Ghostly Python | #собес
Please open Telegram to view this post
VIEW IN TELEGRAM
13👍1
👩‍💻 Пишем персонального AI-ассистента на Python

Рассказываю, как собрать своего голосового ассистента: он слушает, распознаёт, отвечает и не требует облаков. Всё на Python и локально — идеальный проект для старта с AI и аудио.

➡️ Ссылка на статью

🐍 Ghostly Python | #статьи
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥123
🖼️ Библиотека: funcy

funcy — это функциональная утилита для Python, которая вдохновлена языками вроде Lisp и Haskell. Она добавляет множество полезных декораторов, функций для работы с коллекциями и ленивыми вычислениями.

ℹ️ Основные возможности:

🟢 @memoize, @cache — простая мемоизация без лишнего кода.
🟢 walk(), walk_keys(), walk_values() — трансформация структур данных.
🟢 select(), compact(), pluck() — лаконичная фильтрация и выборка.
🟢 Поддержка ленивых вычислений через lmap, lfilter, lremove и др.

⚙️ Пример использования:

from funcy import memoize, select

@memoize
def fib(n):
if n < 2:
return n
return fib(n - 1) + fib(n - 2)

print(fib(35)) # ➔ Быстрее за счёт кэширования

data = {"a": 1, "b": None, "c": 2}
print(select(lambda x: x is not None, data)) # ➔ {'a': 1, 'c': 2}


✔️ Установка:

pip install funcy


➡️ Ссылка на документацию

🐍 Ghostly Python | #библиотеки
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥2
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥22😁6👏3👍2😭1
➡️ LearnPython — интерактивный учебник Python прямо в браузере

LearnPython — это бесплатный онлайн-ресурс, позволяющий изучать Python прямо в браузере. Каждое занятие сопровождается интерактивным терминалом, в котором можно тут же запускать код.

🟢 Уроки от базового синтаксиса до lambda, файлов, классов и модулей.
🟢 Не требует установки Python — всё работает из браузера.
🟢 Подходит для новичков, а также тех, кто хочет быстро повторить основы.
🟢 Есть версии на других языках и переводы.

📌 Отличный способ начать учиться, если под рукой только браузер и 5 минут времени


⛓️ Ссылка на ресурс

🐍 Ghostly Python | #ресурсы
Please open Telegram to view this post
VIEW IN TELEGRAM
10
👩‍💻 Telegram-бот с интеграцией AnythingLLM + LM Studio

Собираем Telegram-бота, который локально общается с LLM через AnythingLLM и LM Studio. Никаких сторонних сервисов — всё в пределах команды и её железа.

➡️ Ссылка на статью

🐍 Ghostly Python | #статьи
Please open Telegram to view this post
VIEW IN TELEGRAM
6