Программистика
Yopiq kanal
Лучший канал про python Ссылка для друга: https://t.me/+Ai6ughKtf5g2ZmFi Купить рекламу: https://telega.in/c/+Ai6ughKtf5g2ZmFi Админ: @JeyRahol По рекламе: @ReivuManager
Ko'proq ko'rsatish5 801
Obunachilar
+3224 soatlar
+187 kun
-4030 kun
Postlar arxiv
5 800
👩💻 Интерактивный онлайн курс по Python
Освойте Python, обучаясь на упражнениях, приближенных к реальным профессиональным задачам
🌐 СсылкаПрограммистика || #Ресурсы
5 800
Шпаргалки по Python для начинающих
Если вы только начали учить Python или хотите быстро освежить знания в памяти, этот гайд — настоящая находка. Внутри собраны все ключевые концепции с готовыми примерами кода.
Программистика||#doc
5 800
Python от Python_Samurai: часть 1
Данный курс - это первая часть материала, посвященному базовым основам языка Python. Все части материала дадут вам наиболее полную информацию о базовой части языка c учетом всех тенденций его развития.
🌐 СсылкаПрограммистика || #Course
5 800
Алгоритмы и структуры данных с примерами на Python
Цель этой книги – при помощи наглядных иллюстраций и исполняемых примеров кода помочь читателю понять ключевые идеи алгоритмов и структур данных и освоить их воплощение в программном коде. Если вам необходимо подготовиться к собеседованию или получить базовые навыки перед сложным курсом по программированию, но не хватает времени на чтение множества учебников от корки до корки, этот учебник станет для вас спасательным кругом в океане знаний. Книга будет особенно полезна всем, у кого есть начальные навыки программирования, но отсутствует четкое понимание алгоритмов и структур данных. Более опытным читателям она поможет освежить и систематизировать знания об алгоритмах.Программистика||#doc
5 800
👩💻InquirerPy — это Python-форк знаменитой библиотеки Inquirer.js, позволяющий создавать красивые интерактивные интерфейсы в терминале. Библиотека поддерживает все популярные типы диалогов: текстовый ввод, подтверждения, списки (одиночный выбор), чекбоксы (множественный выбор) и даже ввод пароля. InquirerPy написан на чистом Python с использованием prompt_toolkit, работает на всех платформах (Windows, macOS, Linux) и предлагает два варианта синтаксиса: классический (для обратной совместимости с PyInquirer) и альтернативный (гибкий, с подсказками от IDE).
🐱 Ссылка на GitHub
Программистика|| #Репозиторий
5 800
Yandex Ecom Open Air — летнее событие про онлайн-продажи
Yandex Ecom Open Air 2026 объединяет деловую программу, живое общение и атмосферу фестиваля в одном потоке. Здесь обсуждают технологии, которые становятся частью среды. Исследуют силы, которые влияют на весь рынок. Находят новые связи, идеи и точки роста.
В течение дня пространство фестиваля наполняют выступления, дискуссии, встречи, специальные форматы, музыка и активности партнёров.
Присоединиться к происходящему можно из любой точки — на площадке фестиваля или через онлайн-трансляцию.
Зарегистрироваться
#реклама 18+
ecomfest.ru
О рекламодателе
5 800
🧠 Базы данных на Python и ИИ: статистика, аналитика, большие данные и машинное обучение
Эта книга – практическое руководство по работе с данными в Python, написанное для тех, кто хочет не просто «знать теорию», а реально работать с данными в повседневных задачах. Шаг за шагом мы пройдем полный жизненный цикл данных: от хранения в базах и написания запросов до анализа, оптимизации и осмысленной интерпретации результатов.Программистика||#doc
5 800
Инструкция по созданию Django приложения "To-Do List"
Это веб-приложение, позволяющее пользователю создавать, редактировать и удалять задачи. Пользователь может пометить задачи как выполненные и просматривать их в удобном списке. Добавлена интерактивность с помощью фронтенд-элементов, что сделает приложение удобным и привлекательным для использования. Внешний вид приложения будет современным и простым, с использованием стилей CSS и JavaScript для взаимодействия с пользователем.
🌐 СсылкаПрограммистика || #Course
5 800
АЙТИШНИКИ, ХВАТИТ сливать время на прилизанные новости и бесполезные курсы
Проект «ИИнтеллигенция» стал главным каналом для тех, кто использует нейросети на уровне разработки, автоматизации и опенсорса, а не просто балуется в чатах. Здесь собирают только то, что реально экономит человеко-часы и работает в проде.
🎓 Готовые ИИ-сервисы, промпты и ИИ-агенты для автоматизации рутины
🖋 Разборы полезных ИИ-инструментов, локальных LLM и опенсорс-репозиториев
🛠 Практические кейсы, гайды по деплою моделей и интеграции ИИ в пайплайны
⚡️ Технические ИТ-новости без маркетинговой воды и душных отчетов
Обучение и прокачка в реальном времени: работа с API (Claude, GPT), локалки (Ollama, vLLM), автоматизация кода, опенсорс-утилиты, AI-агенты и др.
Ценишь время и работаешь с ИИ, подпишись: @clucai
5 800
🐱 GitHub — это тысячи новых репозиториев каждый день.
Но сколько из них реально стоят внимания?
Нашёл канал, где уже отбирают самое интересное:
🟢AI и нейросети
🟢self-hosted
🟢полезные утилиты
🟢инструменты для разработки
🟢автоматизация и многое другое
Короткое описание, ссылка на репозиторий, ничего лишнего.
➡️ @GitHubRadar
5 800
📁 `pathlib` вместо `os.path`: работай с путями по-человечески
Устали от
os.path.join(os.path.dirname(__file__), 'data', 'file.txt')? В Python есть современный объектно-ориентированный способ.
❌ Старый стиль (os.path):
import os
path = os.path.join(os.path.dirname(__file__), 'data', 'file.txt')
✔️ Новый стиль (pathlib):
from pathlib import Path
path = Path(__file__).parent / 'data' / 'file.txt'
🟢 Что умеет pathlib:
- Path.cwd() — текущая директория
- Path.home() — домашняя папка
- path.exists(), path.is_file(), path.is_dir()
- path.read_text(), path.write_text('content')
- path.glob('*.py') — поиск файлов
- path.resolve() — абсолютный путь
- path.with_suffix('.txt') — замена расширения
# Чтение и запись одной строкой
content = Path('config.json').read_text()
Path('output.txt').write_text('Hello, world!')
pathlib — это не просто синтаксический сахар, а удобный инструмент, который делает код чище и кроссплатформенным.
Программистика|| #tips5 800
🔠 Слили 4 ТБ по IT, хакингу и разработке.
⚪️ Все лучшие инструкции, гайды, книги и инструменты — без воды.
🖥 Курсы & GitHub — 579GB
☁️ Хакинг & ИБ — 756GB
🤒 OSINT — 315GB
⌨️ Python — 955GB
🙃 Linux & Bash — 459GB
😦 Работа в IT — 278GB
🖥 Общий архив — 946GB
➡️ Присоединяйтесь и скачивайте.
Пост будет удален через 48 часов.
5 800
🔌 Niquests: HTTP-клиент, который сделал Requests устаревшим (и работает в 2-3 раза быстрее)
Если вы всё ещё используете
requests — вы отстаёте от жизни. Requests официально заморожен и не получает новых фич. На сцену вышел Niquests — его прямой наследник, который работает быстрее, поддерживает HTTP/2 и HTTP/3 «из коробки» и при этом полностью совместим с кодом, написанным под requests.
Главное преимущество Niquests — он просто работает. Меняете import requests на import niquests as requests — и всё. Все ваши старые скрипты с requests.get(), Session(), hooks и mock-библиотеками продолжают работать без изменений. При этом Niquests автоматически включает HTTP/2 и HTTP/3, поддерживает асинхронность, потокобезопасность и даже DNSSEC.
📦 Установка:
pip install niquests
🚀 Пример (ваш старый код — просто работает):
# Было (requests)
import requests
response = requests.get("https://httpbingo.org/get")
print(response.json())
# Стало (Niquests) — просто меняете импорт
import niquests as requests
response = requests.get("https://httpbingo.org/get")
print(response.json()) # Всё работает, но уже через HTTP/2!
Асинхронный пример:
import niquests
async def fetch():
async with niquests.AsyncSession() as session:
response = await session.get("https://api.example.com/data")
return response.json()
Программистика || #Репозиторий5 800
Самый прогерский канал, где за 10 минут ты научишься:
/ Пр0бuв по фото и номеру в ТГ
// Как взломать вебку подруги
/// Мануал по OSINT разведке
Ссылка действительна
23 ч. 59 мин. 👇
https://t.me/+3xWtEj_0qa9hNmUy
5 800
🧩 Генераторы: `yield` и `yield from` — как это работает под капотом и зачем это нужно
Вы каждый день пишете
for x in range(10), но задумывались ли вы, как range выдаёт числа по одному, не создавая список? Или как работают бесконечные последовательности? Генераторы — одна из самых мощных фич Python, которую многие используют, но не до конца понимают. Разбираемся, что скрывается за yield.
🧱 Проблема: список vs генератор
Когда вы создаёте список, все элементы хранятся в памяти. Для миллиона чисел это 8 МБ только на ссылки, не считая самих объектов. Генератор вычисляет значения по требованию — экономия памяти очевидна.
❌ Список (память):
squares = [x**2 for x in range(10_000_000)] # ~80 МБ
✔️ Генератор (экономия):
squares = (x**2 for x in range(10_000_000)) # ~0 байт
Но генераторы — это не только экономия памяти. Это ещё и управление выполнением, и асинхронность, и бесконечные последовательности.
🧠 Как работает `yield` под капотом
Когда Python встречает yield, функция превращается в генератор. При вызове она не выполняется, а возвращает объект-генератор. При первом next() выполняется до первого yield, возвращает значение и приостанавливается. При следующем next() возобновляется с того же места.
def simple_gen():
print("Начало")
yield 1
print("Продолжение")
yield 2
print("Конец")
g = simple_gen()
print(next(g)) # Начало → 1
print(next(g)) # Продолжение → 2
print(next(g)) # Конец → StopIteration
Внутри генератор хранит состояние: локальные переменные, текущую позицию, стек вызовов. Это похоже на сопрограмму.
🔁 `yield from` — делегирование другому генератору
До Python 3.3, чтобы передать управление вложенному генератору, приходилось писать циклы. yield from делает это автоматически.
❌ Без `yield from` (муторно):
def flatten(nested):
for sublist in nested:
for item in sublist:
yield item
✔️ С `yield from` (красиво):
def flatten(nested):
for sublist in nested:
yield from sublist
yield from не только передаёт значения, но и принимает send() и throw() от вызывающего, что делает генераторы полноценными сопрограммами.
Пример с `yield from` в цепочке:
def chain(*iterables):
for it in iterables:
yield from it
for x in chain([1, 2], "abc", range(3)):
print(x) # 1, 2, a, b, c, 0, 1, 2
🧪 Генераторы как сопрограммы (двусторонняя связь)
Генераторы могут не только выдавать значения, но и принимать их извне через send(). Это превращает их в сопрограммы.
def grep(pattern):
print(f"Ищу {pattern}")
while True:
line = yield
if pattern in line:
print(f"Найдено: {line}")
g = grep("python")
next(g) # активация
g.send("Java рулит") # ничего
g.send("Python рулит") # Найдено: Python рулит
g.close()
Аналог send для throw — пробросить исключение внутрь генератора.
Пример пайплайна с генераторами:
def read_lines(filename):
with open(filename) as f:
for line in f:
yield line
def filter_errors(lines):
for line in lines:
if "ERROR" in line:
yield line
def extract_message(line):
yield line.split(":")[-1].strip()
pipeline = extract_message(filter_errors(read_lines("app.log")))
for msg in pipeline:
print(msg)
Каждый шаг обрабатывает данные лениво, без промежуточных списков.
💡 Запомни:
🟢 Генератор — это функция с yield, возвращающая итератор, который вычисляет значения по требованию. 🟢 yield from делегирует выполнение другому генератору, упрощая вложенность. 🟢 Генераторы экономят память и позволяют обрабатывать бесконечные последовательности. 🟢 send() и throw() делают генераторы полноценными сопрограммами. 🟢 В Python 3.5+ async/await заменили генераторы для асинхронности, но генераторы остались незаменимы для ленивых вычислений.Программистика || #Статья
5 800
Самый прогерский канал, где за 10 минут ты научишься:
/ Пр0бuв по фото и номеру в ТГ
// Как взломать вебку подруги
/// Мануал по OSINT разведке
Ссылка действительна
23 ч. 59 мин. 👇
https://t.me/+21aDomQkVOMxMjU6
