Python Tech Code • IT
3.91K subscribers
1.01K photos
117 videos
33 files
945 links
Изучаем Python, осваиваем SQL и следим за IT-новостями.

Сотрудничество (реклама): @NotPriceMedia

Канал на бирже : https://telega.in/c/PythonTechCode
Download Telegram
👀 pyTermTk — фреймворк для TUI-приложений на Python

Библиотека для создания продвинутых текстовых интерфейсов (TUI) с поддержкой виджетов, тем оформления и кросс-платформенной работой.

➡️ Ключевая функция:
Позволяет строить интерактивные терминальные приложения с элементами GUI (кнопки, таблицы, формы) без зависимости от графического сервера.

Установка библиотеки:
pip install pyTermTk


Пример использования:
from TermTk import TTk, TTkButton

def on_click():
print("Button clicked!")

root = TTk.TTk()
btn = TTkButton(text="Click me!", pos=(10,5), size=(20,3))
btn.clicked.connect(on_click)
root.mainloop()


💻 GitHub

💎 Главный плюс:
Полноценный набор UI-компонентов (CheckBox, RadioButton, ScrollArea) + поддержка "тёмной/светлой" тем прямо в терминале.

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
🧘 dabl — AutoML для ленивых дата-сайентистов

Библиотека для автоматического анализа данных и построения базовых ML-моделей в одну строку кода. Разработана командой scikit-learn.

🔩 Ключевая функция:
Автоматизирует всю рутину: предобработку данных, feature engineering и подбор моделей с визуализацией результатов.

Установка библиотеки:
pip install dabl


Пример использования:
import dabl
data = dabl.datasets.load_titanic()
dabl.SimpleClassifier().fit(data, target_col="survived")
# Готово! Смотрите отчёт в Jupyter


💻 GitHub

👉 Главный плюс:
Мгновенный старт работы с данными — библиотека сама определяет типы фичей, подбирает трансформеры и строит interpretable-модели.

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🏷️ ImageHash – поиск дубликатов изображений с помощью хеширования

ImageHash – это Python-библиотека для вычисления perceptual-хешей изображений. Она помогает находить похожие или дублирующиеся картинки, даже если они были изменены (например, обрезаны или пережаты).

📸 Ключевая функция:
Сравнение изображений через хеши (ahash, dhash, phash, whash), что позволяет быстро искать дубликаты без полного перебора пикселей.

Установка библиотеки:
pip install imagehash


Пример использования:
from PIL import Image
import imagehash

hash1 = imagehash.average_hash(Image.open('image1.jpg'))
hash2 = imagehash.average_hash(Image.open('image2.jpg'))
print(hash1 - hash2) # Чем меньше разница, тем больше похожи изображения


💻 GitHub

⚡️ Главный плюс:
Автоматизация поиска дубликатов с высокой точностью и поддержкой разных алгоритмов хеширования. Отлично подойдет для очистки медиабиблиотек.

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1
Media is too big
VIEW IN TELEGRAM
🤔 Так надо организовывать свою работу

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
😁72
🥬 Управление Android-устройствами напрямую из Python-скриптов

Библиотека для работы с Android Debug Bridge (ADB) без зависимостей от нативного SDK.

Особенности:
Поддержка всех основных ADB команд
Работает без установки Android SDK
Простое API для интеграции в тестовые фреймворки
Поддержка нескольких устройств одновременно


Установка библиотеки:
pip install pure-python-adb


Пример использования:
from ppadb.client import Client as AdbClient

# Подключение к ADB серверу
client = AdbClient(host="127.0.0.1", port=5037)
devices = client.devices()

if devices:
device = devices[0]
print(f"Устройство: {device.serial}")
# Получение информации о системе
print(device.shell("getprop ro.build.version.release"))


💻 GitHub

📟Главный плюс:
Полностью Python-решение для автоматизации тестирования и управления Android без зависимостей от Java/SDK (реализована на Python 3.6+).

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍41
This media is not supported in your browser
VIEW IN TELEGRAM
💻Сравнение методов аутентификации

Сессии — для простых сценариев, JWT/OAuth — для масштабируемости, SSO — для удобства, QR — для мобильных юзеров.

💎Сессия → Cookie с ID (только для 1 устройства)
💎Токен → Закодированные данные (без хранения на сервере)
💎JWT → Стандартный подписанный токен (самодостаточный)
💎SSO → 1 вход → много сервисов
💎OAuth2 → Делегированный доступ без пароля
💎QR-код → Мобильный вход по сканированию


┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥52
😚 Сравниваем терабайты данных за секунды, используя фиксированный объем памяти

Библиотека DataSketch реализует алгоритмы вероятностного хеширования и сжатия данных для быстрого сравнения больших наборов.

🥳 Ключевая функция:
Идеально для обработки Big Data и поиска дубликатов.

Установка библиотеки:
pip install datasketch


Пример использования:
from datasketch import MinHash, MinHashLSH

# Создаем "отпечатки" текстов
m1 = MinHash(num_perm=128)
m2 = MinHash(num_perm=128)
for word in ["data", "science"]: m1.update(word.encode())
for word in ["data", "analysis"]: m2.update(word.encode())

# Сравниваем (0.75 = порог схожести)
print("Схожесть:", m1.jaccard(m2)) # Результат: 0.5


💻 GitHub

😞 Фишка:
Позволяет находить дубликаты среди миллионов документов на обычном ноутбуке.

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🐹 Начинаем ждать пятницу

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7😁5
🎯 Python для реализации брутфорса

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

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

import string
import itertools

def brute_force_pass(target, length):
chars = string.ascii_letters + string.digits # Символы: буквы и цифры
for attempt in itertools.product(chars, repeat=length): # Генерация комбинаций
pwd_attempt = ''.join(attempt) # Преобразование кортежа в строку
print(f"Trying: {pwd_attempt}") # Вывод текущей попытки
if pwd_attempt == target: # Проверка, совпадает ли пароль
print(f"Password found: {pwd_attempt}") # Если совпал - выводим его
return pwd_attempt
print("Password not found") # Если пароль не найден
return None


➡️ Метод брутфорса может быть мощным инструментом, однако его использование должно быть этичным и законным.
Никогда не пытайтесь взломать файлы или системы без разрешения владельцев.


┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍2
📊 Пять ключевых агрегатных функций SQL для аналитиков данных

➡️ SUM() — суммирует все значения в числовом столбце

➡️ AVG() — вычисляет среднее значение в числовом столбце

➡️ COUNT() — подсчитывает общее количество строк или значений (исключая NULL)

➡️ MAX() — возвращает максимальное значение в столбце

➡️ MIN() — возвращает минимальное значение в столбце

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
🏆 PySR – ИИ, который объясняет свои решения

PySR находит простые математические формулы, которые точно описывают ваши данные и понятны человеку.

👾 Как это работает:
Автоматически подбирает уравнения (например, "y = 2.5*x + 10") вместо сложных нейросетей..

Установка библиотеки:
pip install pysr


Пример использования:
from pysr import PySRRegressor
model = PySRRegressor() # Настройки по умолчанию
model.fit(X, y) # X - данные, y - целевая переменная
print(model) # Покажет лучшую найденную формулу


💻 GitHub

🎈 Главный плюс:
Получаете не просто предсказания, а готовое уравнение, которое можно опубликовать в научной работе.

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍3
🐍 Методы списков Python

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
5
🟨 Получение истории браузера

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

🟡Это очень полезно, если вам нужно анализировать свою интернет-активность или работать с данными о посещенных сайтах.

Установка библиотеки:
pip install browser-history


Пример:
from browser_history import get_history

# Получаем историю
outputs = get_history()

# Это список кортежей (дата и время, URL)
his = outputs.histories

# Выводим историю на экран
for entry in his:
print(entry)


💻 GitHub

➡️ Модуль также поддерживает получение закладок, хотя эта функция считается экспериментальной.

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍2
⚡️ Визуализируй код за пару секунд

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

Зачем это нужно:
Чтобы быстро разбираться в чужом коде, объяснять свою логику коллегам или просто документировать алгоритмы.

Установка библиотеки:
pip install pyflowchart


💻 GitHub

Главный плюс:
Экономит часы рутинной работы — схемы генерируются автоматически!

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
🤓 Чистый Python вместо Git CLI: как Dulwich упрощает работу с репозиториями

Dulwich – это библиотека для работы с Git-репозиториями, написанная полностью на Python. Она позволяет читать, записывать и управлять Git-объектами без зависимостей от нативного Git CLI.

Главная задача:
Дать Python-разработчикам полный контроль над Git на уровне API, минуя вызовы внешних команд.

Установка библиотеки:
pip install dulwich


Пример использования:
from dulwich.repo import Repo  

repo = Repo(".")
for entry in repo.get_walker():
print(entry.commit.message.decode())


💻 GitHub

💡 Ключевое преимущество:
Независимость от системного Git – интеграция в Python-приложения (CI/CD, инструменты анализа кода) без shell-вызовов.

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
🔰 Автоматизация обработки документов с помощью AI

Sparrow — это open-source инструмент для автоматического извлечения данных из документов (PDF, изображений и т.д.). Он использует ML-модели, чтобы превращать неструктурированные файлы в готовые к анализу данные.

Как начать использовать:

1. Установите (требуется Python 3.8+):
git clone https://github.com/katanaml/sparrow
cd sparrow
pip install -r requirements.txt


2
. Запустите сервер:
python -m sparrow.server


3
. Используйте через API:
import requests

response = requests.post(
'http://localhost:8000/extract',
files={'file': open('ваш_документ.pdf', 'rb')}
)

print(response.json()) # Ваши данные в структурированном виде!


💻 GitHub

ℹ️ Ключевое преимущество:
Sparrow извлекает текст, таблицы и рукописные данные из документов, преобразуя их в структурированный формат с полной локальной обработкой для вашей безопасности.

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍2🤯1
Функция Map в Python

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥42👍1
🔥 attrs — волшебная палочка для Python-классов

Библиотека для создания классов с автоматической реализацией методов __init__ и других.

Главная функция:
Автоматически генерирует стандартные методы Python-классов через декларативный синтаксис, сохраняя контроль над типами и валидацией.

Установка библиотеки:
pip install attrs


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

@attr.s
class Cat:
name: str = attr.ib() # обязательное поле
age: int = attr.ib(default=1) # с значением по умолчанию
is_fluffy: bool = attr.ib(default=True) # и ещё одно

murzik = Cat(name="Мурзик", age=3)
print(murzik) # Выведет: Cat(name='Мурзик', age=3, is_fluffy=True)


💻 GitHub

⚡️ Ключевое преимущество:
Скорость разработки + безопасность типов. Совместимость с mypy и IDE (подсказки типов работают из коробки).

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42
SQL-Cheat-Sheet.pdf
208.6 KB
😡 Крутая шпаргалка по SQL

Все команды (ну почти все).


┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👀1
😡 Будь внимателен к своим мечтам — они могут сбыться ровно настолько, чтобы оставить тебя без новых целей

🛑Код-притча о мечтах:
while has_dreams():  
current_dream = pursue()
if current_dream.achieved:
print("...и что дальше?")


🛑Объяснение (построчно):
🛑while has_dreams():
Живешь, пока есть цели

🛑current_dream = pursue()
Берешь новую мечту

🛑if achieved:
Достиг — и тут же: "...и что дальше?"


🛑Суть: Счастье — в погоне, не в финише.

┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста «(!?»
🇨🇱 Python Tech Code
Please open Telegram to view this post
VIEW IN TELEGRAM
😁7👍1🔥1👀1