58174
Всё самое интересное из мира Python Связь: @devmangx РКН: https://clck.ru/3GMMF6
На GitHub есть репозиторий Python-Scripts, где собрано много небольших, но полезных утилит и примеров кода на Python, включая конвертеры файлов, скрипты для автоматизации, простые GUI-приложения и учебные проекты, а сообщество постепенно дополняет коллекцию.
Сохраняем ❤️
👉 @PythonPortal
Вот как можно запустить Random Forest на GPU.
Hummingbird компилирует уже обученные классические ML-модели в тензорные вычисления. Это позволяет гонять инференс на ускорителях вроде GPU и получать ощутимый прирост скорости.
Ускорение до 40 раз всего двумя строками кода. 😄
👉 @PythonPortal
Плюс игра на баяне, вызов духов мертвых, пересказ наизусть всех серий ЗачарованныхЧитать полностью…
PyWhatKit - это одна из самых популярных библиотек для автоматизации WhatsApp и YouTube.
Ссылка на репозиторий: https://github.com/Ankit404butfound/PyWhatKit
👉 @PythonPortal
Официальное расширение PostgreSQL для VS Code это мёд 🙂
Microsoft запилил его так, что работать с базой стало намного удобнее, куча полезных фич и никаких танцев с бубном.
Что можно делать:
Просматривать схему базы в удобном визуальном виде
Общаться с базой через агентов
Смотреть метрики и аналитику
Использовать инструменты агентов для более глубоких инсайтов
И это далеко не всё.
Очень удобное расширение, если часто работаешь с Postgres
👉 @PythonPortal
Линус Торвальдс не против vibe-coding, пока это не используется в вещах, которые реально имеют значение.
Создатель Linux также затронул тему Rust в ядре, проприетарного кода Nvidia и проблему AI-краулеров.
👉 @PythonPortal
Когда стало скучно с одним рабочим проектом и на фрилансе взял еще 2 новых
👉 @PythonPortal
🔵🗣Вырасти до хардового Middle+ аналитика.
Как? Добавьте к своим скилам навыки в проектировании архитектуры и интеграций веб-сервисов!
Рассмотрите — авторский курс про архитектуру и интеграции
с практикой.
—————
По результатам курса вы:
▫️научитесь выбирать стиль интеграции под вашу задачу;
▫️сможете проектировать с нуля и описывать интеграции в современных стилях (API: REST, SOAP, gRPC и др. + брокеры сообщений);
▫️поймете, как правильно собирать требования и моделировать в UML;
▫️подготовитесь к собеседованию, решив более 100 тестов;
▫️разработаете свой API на Python;
—————
🟢Вы получите большую базу фундаментальных знаний, доступ к урокам и обновлениям остается навсегда 💡
• Всю программу и отзывы смотрите в боте курса.
• Бонусный модуль про проектирование баз данных — нормализация, транзакции, основы DWH, индексы.
• Результат после прохождения курса: 15 рабочих проектов в портфолио.
• Доступ к чату учеников (общение, обмен опытом, помощь внутри сообщества)
🔹🔹 С чего начать?🔹🔹
С открытых бесплатных уроков по архитектуре и интеграциям в чат-боте курса. Переходите.
👇
@studyit_help_bot
Скидка на курс от канала —
1 000₽ по промокоду PYTHON
до конца ноября
Наиболее распространенные команды Git
👉 @PythonPortal
Новая игрушка для тех, кто обожает странные, технологичные и слегка психоделические штуки. 👍
Недавно нашёл экспериментальный редактор, который больше похож на арт-инсталляцию для хакеров, чем на обычный IDE.
Что внутри:
Шейдерные эффекты, неон и эффект старого экрана. Не обязательно, но включить можно
Полноценная подсветка синтаксиса и разбор кода через Tree Sitter. Rust, Python, Go, C++ и ещё куча языков.
LSP работает на ура. Переходы по символам, автокомплит, подсказки типов. Настраивать ничего не пришлось.
Встроенный терминал, и не просто терминал, а на основе st. Для любителей минимализма и сурового UX.
Мультикурсор, кастомные парсеры и всякие удобства для тех, кто пишет на своём таинственном языке, о котором знают три человека в мире.
Поддержка ИИ-подсказок. Можно цеплять модели через OpenRouter и выбирать, кто сегодня будет вашим робот-напарником.
Я только что нашёл сайт, который объясняет HTTP-коды… через мемы.
200, 404, 500 и вся эта банда.
Учить HTTP таким способом надо прямо на первом курсе программирования.
→ http://github.com/keijeizei/httpmemes
👉 @PythonPortal
Как получить минимальное и максимальное значения последовательности в Python, используя встроенные функции.
Обрати внимание: обе функции поддерживают удобный параметр default, который можно задать на случай, если последовательность окажется пустой.
👉 @PythonPortal
Oxylabs это довольно известная компания в сфере веб-скрейпинга с десятилетним опытом.
Они выпустили Python-пакет для веб-парсинга. С его помощью можно вытаскивать данные из e-commerce сайтов, поисковиков, сервисов недвижимости и многого другого.
Вот простой пример парсинга результатов Bing:
from oxylabs import RealtimeClient
# Указываем данные для авторизации в Oxylabs API
username = "username"
password = "password"
# Создаем Realtime-клиент с нашими кредами
client = RealtimeClient(username, password)
# Используем bing_search, чтобы получить результаты Bing по запросу "nike"
result = client.bing.scrape_search("nike")
# Выводим сырые данные (как есть)
print(result.raw)
Junior нам не нужен, нам нужен младший разработчик
👉 @PythonPortal
Теперь в Minecraft можно генерировать 3D-объекты по одному промпту.
Мод Falcraft добавляет в игру продвинутый AI. Можно на лету менять текстуры блоков через NanoBanana или генерировать целые 3D-структуры одной командой прямо во время игры. 🌟
Скачать на GitHub: https://github.com/blendi-remade/falcraft?tab=readme-ov-file
👉 @PythonPortal
Git объявил, что в версии 3.0 ветка master будет переименована в main по умолчанию. Ожидается, что это произойдет примерно в 2026 году.
GitHub сделал этот переход ещё в 2020, чтобы избавиться от старого термина master/slave, который тянулся из старых техносистем и архитектур.
👉 @PythonPortal
Мой любимый лайфхак:
1. находишь лекцию на YouTube
2. берёшь транскрипт через http://ytscribe.ai
3. вставляешь в Gemini с таким промтом:
Сгенерируй изображение. Преврати этот транскрипт в шпаргалку с основными тезисами и выведи финальный результат как изображение 9:16, созданное nano banana.
[ВСТАВЬ ПОЛНЫЙ ТРАНСКРИПТ]
Создай QR-код для Wi-Fi на Python за пару секунд
pip install wifi_qrcode_generator
import wifi_qrcode_generator.generator
from PIL import Image
ssid = "CLCoding_WIFI"
password = "supersecret123"
security = "WPA"
from wifi_qrcode_generator.generator import wifi_qrcode
qr = wifi_qrcode(ssid, False, security, password)
qr.make_image().save("wifi_qr.png")
Image.open("wifi_qr.png")
Распаковка стала до 30% быстрее в CPython 3.15
В CPython 3.15 появились заметные улучшения скорости декомпрессии: распаковка Zstandard (zstd) теперь быстрее на 25–30%, а zlib работает на 10–15% быстрее при объёмах данных больше 1 МБ. Такой прирост достигли благодаря оптимизации работы с выходными буферами в процессе распаковки.
👉 @PythonPortal
Совет по Python:
Добавление элемента в конец списка работает за O(1), но вставка в середину списка стоит O(n).
collections.deque обеспечивает O(1) при добавлении элементов с любого конца.
👉 @PythonPortal
Наконец-то появился open-source инструмент для контекстной инженерии на Python.
Pixeltable это единая декларативная платформа, которая закрывает весь мультимодальный пайплайн от хранения данных до выполнения моделей.
Идея простая. Вместо того чтобы связывать между собой векторную БД, SQL-хранилище, сервис эмбеддингов и фреймворк под агентов, всё живет в одной системе.
Документы, эмбеддинги, история диалогов и результаты агентов это просто таблицы. Эмбеддинги считаются автоматически как вычисляемые колонки. Векторный поиск работает вместе с обычными операциями над данными.
Система заточена под полноценный контекстный пайплайн.
Вот стартовый ноутбук с примером того, как построить контекстную инженерию на Pixeltable.
👉 @PythonPortal
Как создать синусоидальную волну на Python с помощью Bokeh и NumPy 🐍
import numpy as np
from bokeh.layouts import gridplot
from bokeh.plotting import figure, output_file, show
N = 100
x = np.linspace(0, 4 * np.pi, N)
y0 = np.sin(x)
output_file('sinewave.html')
sine = figure(width=500, plot_height=500, title='Sine')
sine.circle(x, y0, size=10, color="navy", alpha=0.5)
p = gridplot([[sine]], toolbar_location=None)
show(p)
ПОСЛЕДНИЕ НОВОСТИ: Вчера Cloudflare на пару минут лег , и следователи обвиняют в этом Whiskers. 👀
👉 @PythonPortal
Разработчики ядра Python предлагают сделать язык программирования Rust жёсткой зависимостью для Python.
Конкретно речь идёт о CPython (де-факто эталонной реализации Python)
Такая зависимость от Rust фактически сделает невозможным современный Python на ряде платформ, не поддерживаемых Rust (включая RiscOS, PPC-Mac’и, некоторые версии CentOS и другие)
👉 @PythonPortal
Когда фиксишь один баг, но тут прилетает новый
👉 @PythonPortal
Большая новость: теперь Google Colab можно запускать прямо внутри VS Code.
То есть можно писать код в нормальном редакторе, а ноутбук подключать к Colab GPU/TPU окружению для ML/AI задач.
Настройка занимает пару минут. И бесплатно.
Как стартануть:
1. Ставишь расширение Google Colab из Marketplace в VS Code
2. Открываешь .ipynb
3. Выбираешь ядро Colab
4. Авторизуешься и всё, поехали
👉 @PythonPortal
Совет по чистым тестам в Python:
В большинстве случаев твои тесты должны покрывать:
- все happy path сценарии
- edge/corner/boundary кейсы
- негативные тесты
- проверки на безопасность и некорректные вводы
import uuid
from dataclasses import dataclass
from typing import Optional
@dataclass
class User:
username: str
class InMemoryUserRepository:
def __init__(self):
self._users = []
def add(self, user: User) -> None:
self._users.append(user)
def search(self, query: Optional[str] = None) -> list[User]:
if query is None:
return self._users
else:
return [
user
for user in self._users
if query in user.username
]
# happy path
def test_search_users_without_query_lists_all_users():
user1 = User(username="john@doe.com")
user2 = User(username="marry@doe.com")
repository = InMemoryUserRepository()
repository.add(user1)
repository.add(user2)
assert repository.search() == [user1, user2]
# happy path
def test_search_users_with_email_part_lists_all_matching_users():
user1 = User(username="john@doe.com")
user2 = User(username="bob@example.com")
user3 = User(username="marry@doe.com")
repository = InMemoryUserRepository()
repository.add(user1)
repository.add(user2)
repository.add(user3)
assert repository.search("doe") == [user1, user3]
# edge test case
def test_search_users_with_empty_query_lists_all_users():
user1 = User(username="john@doe.com")
user2 = User(username="marry@doe.com")
repository = InMemoryUserRepository()
repository.add(user1)
repository.add(user2)
assert repository.search("") == [user1, user2]
# negative test case
def test_search_users_with_random_query_lists_zero_users():
user1 = User(username="john@doe.com")
repository = InMemoryUserRepository()
repository.add(user1)
assert repository.search(str(uuid.uuid4())) == []
# security test
def test_search_users_with_sql_injection_has_no_effect():
user1 = User(username="john@doe.com")
repository = InMemoryUserRepository()
repository.add(user1)
repository.search("DELETE FROM USERS;")
assert repository.search() == [user1]
Зарплата 207.000р у Middle-разработчика в Яндекс
«В день уходит несколько часов на созвоны, в остальное время закрываю задачки из спринта, редко перерабатываю. У компании топовый офис, но с коллективом как-то не заладилось. Радуюсь классному ДМС и стабильной зарплате» - middle разработчик из Яндекса.
Бигтех по-русски - канал с реальными зарплатами и историями IT-специалистов российского БигТеха. Там уже опубликованы рассказы программистов Альфа-банка, Сбера и Тинькофф 🤯
Читайте: @bigtech_russia