Pythoner
Відкрити в Telegram
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode
Показати більше6 607
Підписники
+224 години
-17 днів
-3130 днів
Архів дописів
6 608
✈️Legacy код, или унаследованный код, - это существующая кодовая база, которая продолжает использоваться, несмотря на то, что она может быть устаревшей, плохо структурированной или трудной для поддержки.
➡️Характеристики Legacy кода
💬Устаревшие технологии или методологии
💬Отсутствие или недостаточность документации
💬Сложность в поддержке и расширении
💬Высокая связность и низкая сплоченность
➡️Пример Legacy кода
# Legacy код на Python
def calculate_total(items):
total = 0
for item in items:
total = total + item['price'] * item['quantity']
return total
# Современный эквивалент
def calculate_total(items):
return sum(item['price'] * item['quantity'] for item in items)
➡️Проблемы, связанные с Legacy кодом
💬Сложность внесения изменений и добавления новых функций
💬Повышенный риск появления ошибок при модификации
💬Трудности в интеграции с современными технологиями
💬Зависимость от устаревших библиотек и фреймворков
➡️Стратегии работы с Legacy кодом
💬Постепенный рефакторинг
💬Написание тестов для существующего кода
💬Документирование существующей функциональности
💬Модульная замена частей системы
🔎Заключение
Работа с Legacy кодом - это неизбежная часть жизни многих разработчиков. Хотя он может представлять сложности, правильный подход к его обработке может значительно улучшить качество и поддерживаемость программного обеспечения.
🐍Pythoner6 608
🌐 Твоё ИИ-решение — в одной из крупнейших энергетических компаний России
Получи подготовленные данные и разработай ИИ-ассистента для энергетики на соревновании от ПАО «Интер РАО» при поддержке компании «Яндекс».
Призовой фонд — 750 000 рублей. Лучшие проекты смогут стать частью экосистемы компании.
Регистрация открыта до 27 сентября.
Можно участвовать одному или командой до 5 человек. Идеальный состав: разработчик, специалист по машинному обучению, аналитик и дизайнер.
Задачи соревнования — за какую возьмешься? 1️⃣ ИИ-помощник для подготовки презентаций. 2️⃣ Помощник для анализа документов из судов. 3️⃣ Ассистент для создания ИТ/ИБ-дайджестов. 4️⃣ Архитектор BPMN-диаграмм.Стартуем 28 сентября. Придумай концепт проекта: самые сильные идеи участники доработают под руководством экспертов Группы «Интер РАО» с 9 по 23 октября. Финал в Москве — 3 ноября. ➡️ Регистрируйся: https://cnrlink.com/interraohack26pythoner
6 608
Бесплатный эфир "Аналитика данных" для начинающих!
Вебинар о профессии аналитика данных для новичков без опыта в IT!
✅ ведущий — практикующий специалист
✅ информация о профессии изнутри
✅ вебинар по реальным задачам аналитика
✅ всё о необходимых навыках и технологиях
Узнайте, как стать аналитиком данных и найти работу.
Регистрируйтесь бесплатно и осваивайте востребованную профессию с Симулейтив!
Записаться
#реклама 16+
simulative.ru
О рекламодателе
6 608
Регистрируйтесь на Yandex Scale 2026
Главная конференция Yandex Cloud.
Узнайте о сервисах, которые меняют ваш бизнес.
4 офлайн-трека (AI, Infra + DevTools, Data, Security), онлайн-трек Deep Tech, воркшопы по ИИ и интерактивы. Подробнее о программе читайте в карточках🗒
📅24 сентября
🚗Москва + 💻онлайн
Участие бесплатное!
Зарегистрироваться
#реклама 16+
scale.yandex.cloud
О рекламодателе
6 608
✈️
googlesearch — это простая в использовании библиотека для Python, которая позволяет отправлять запросы в Google и получать ссылки на результаты поиска прямо из вашего кода. Она предоставляет гибкий и мощный интерфейс, который можно настроить для различных задач поиска.
➡️Основной функционал
Основной метод библиотеки — это функция search(), которая возвращает результаты поиска в виде генератора, содержащего объекты SearchResult или URL-ссылки в зависимости от параметров.
Аргументы функции:
💬term — строка с запросом, которую вы хотите найти в Google.
💬num_results — количество результатов, которые нужно вернуть (по умолчанию 10).
💬lang — язык результатов поиска (по умолчанию "en").
💬proxy — возможность использования прокси для запросов (по умолчанию None).
💬advanced — расширенный режим поиска, возвращает объекты с более детализированной информацией, такими как заголовок и описание страницы (по умолчанию False).
💬sleep_interval — время ожидания между запросами в секундах (по умолчанию 0).
💬timeout — максимальное время ожидания ответа от Google (по умолчанию 5 секунд).
💬safe — настройка безопасного поиска: "off" для отключения, "active" для фильтрации контента для взрослых (по умолчанию "active").
💬ssl_verify — возможность включить или отключить проверку SSL-сертификатов (по умолчанию None).
💬region — регион для таргетирования поиска (по умолчанию None).
➡️Примеры использования. Простой поиск:
from googlesearch import search
query = "Python best practices"
for result in search(query, num_results=5):
print(result)
⬆️Этот код отправляет запрос "Python best practices" и возвращает первые пять ссылок на результаты поиска.
💬Расширенный поиск с дополнительными параметрами:
for result in search("новости технологий", num_results=3, lang='ru', safe='off', region='RU', advanced=True):
print(result.title, result.url)
⬆️Поиск по русскоязычным ресурсам с отключенным безопасным поиском и указанием региона RU. В данном случае возвращаются не только ссылки, но и заголовки страниц.
🔎В общем, googlesearch - это мощный инструмент, который позволяет интегрировать Google-поиск в Python-приложения, делая его отличным для автоматизации и поиска данных.
🐍Pythoner6 608
Розыгрыш Яндекс Станции уже в боте
Любимые блогеры, розыгрыши, новости и анонсы в одном боте!
Узнать больше
#реклама 16+
refer.id
О рекламодателе
6 608
Здесь делают hh.ru. И показывают, как именно.
Узнавайте первыми о митапах, подсматривайте, как принимаются продуктовые решения, и знакомьтесь с людьми, которые создают hh.ru.
Подписаться
#реклама
О рекламодателе
6 608
Бесплатный курс: веб-дизайн, графика, интерфейсы
Получи востребованные навыки:
- создание дизайна сайтов и приложений
- создание инфографики и карточек для маркетплейсов
- работа в графическом редакторе Figma и др.
Студенты курса в среднем зарабатывают от 68 000 ₽ уже во время обучения💰
Зарегистрироваться
#реклама 16+
ydaev.ru
О рекламодателе
6 608
✈️В Python си-коллбеки (C callbacks) — это механизм, позволяющий вызывать функции, написанные на языке C или C++, из Python кода. Это мощный инструмент для интеграции Python с существующими библиотеками C/C++ или для оптимизации производительности критически важных участков кода.
➡️ Применение си-коллбеков находит применение в различных областях, таких как:
* Интеграция с C/C++ библиотеками: вызов функций из библиотек, написанных на C/C++, непосредственно из Python.
* Оптимизация производительности: реализация критичных к производительности участков кода на C/C++ и вызов их из Python.
* Обработка событий: использование функций Python в качестве обработчиков событий в C/C++ приложениях.
* Расширение функциональности Python: добавление новых возможностей в Python с помощью C/C++.
➡️Вот пример использования си-коллбеков с ctypes:
import ctypes
import time
# Загрузка библиотеки C (libcallback_example.so - пример, нужно скомпилировать код C)
lib = ctypes.CDLL("./libcallback_example.so")
# Определение типа функции обратного вызова
CMPFUNC = ctypes.CFUNCTYPE(None, ctypes.c_int)
# Функция Python, которая будет использоваться в качестве обратного вызова
def my_callback(value):
print(f"Python callback called with value: {value}")
# Регистрация функции обратного вызова в библиотеке C
# Предполагается, что в библиотеке C есть функция register_callback, принимающая указатель на функцию
register_callback = lib.register_callback
register_callback.argtypes = [CMPFUNC]
register_callback.restype = None
register_callback(CMPFUNC(my_callback))
# Вызов функции C, которая будет периодически вызывать функцию обратного вызова
# Предполагается, что в библиотеке C есть функция run_loop, которая запускает цикл
run_loop = lib.run_loop
run_loop.argtypes = []
run_loop.restype = None
run_loop()
➡️Пример кода на C (callback_example.c):
#include <stdio.h>
#include <unistd.h> // for sleep
typedef void (*callback_function)(int);
static callback_function registered_callback = NULL;
void register_callback(callback_function callback) {
registered_callback = callback;
}
void run_loop() {
int i = 0;
while (i < 5) {
sleep(1);
if (registered_callback != NULL) {
registered_callback(i);
}
i++;
}
}
➡️Компиляция кода на C:
gcc -shared -o libcallback_example.so -fPIC callback_example.c
⬆️ В этом примере показано, как использовать ctypes для вызова функций из динамически подключаемой библиотеки C и передачи функции Python в качестве обратного вызова. Код на C регистрирует коллбек и периодически вызывает его. Важно правильно определить типы данных с помощью ctypes.CFUNCTYPE и argtypes/restype. Перед запуском Python кода необходимо скомпилировать код C в shared library (.so файл для Linux).
🐍 Pythoner6 608
Как PostgreSQL ведёт себя под большой нагрузкой
Борьба с блокировками в PostgreSQL: как сохранить параллельность при высокой нагрузке.
📅 8 сентября, 20:00 МСК - открытый урок курса «Высоконагруженные системы: архитектура и масштабирование».
📚 Разберём блокировки на уровне транзакций и строк, научимся выявлять взаимные блокировки и узкие места. На реальных примерах покажем оптимизацию запросов и архитектурные приёмы для поддержания производительности.
Для разработчиков, архитекторов, инженеров, DBA и аналитиков, работающих с PostgreSQL.
Регистрируйтесь - получите практические приёмы и спецусловия на обучение. 😊
Узнать больше
#реклама 16+
otus.ru
О рекламодателе
6 608
Регистрируйтесь на Yandex Scale 2026
Главная конференция Yandex Cloud.
Узнайте о сервисах, которые меняют ваш бизнес.
4 офлайн-трека (AI, Infra + DevTools, Data, Security), онлайн-трек Deep Tech, воркшопы по ИИ и интерактивы. Подробнее о программе читайте в карточках🗒
📅24 сентября
🚗Москва + 💻онлайн
Участие бесплатное!
Зарегистрироваться
#реклама 16+
scale.yandex.cloud
О рекламодателе
6 608
Яндекс Музыка до 360 дней бесплатно
Яндекс Музыка для вас и 3-х ваших близких.
Кинопоиск и Яндекс Книги тоже в мультиподписке Плюс.
Попробуйте бесплатно❤️
Слушать
#реклама 18+
music.yandex.ru
О рекламодателе
6 608
Решайте задачи и готовьтесь к техсекции на стажировку
А ты сможешь решить алгоритмическую задачу за час и без подсказок?
Яндекс проводит бесплатные тренировки по алгоритмам для тех, кто хочет систематизировать знания, прокачать решение задач и подготовиться к техническому собеседованию.
-Короткие видеоуроки
-Практические задачи
-Регулярные соревнования
-Решение задач на время
-Рейтинг и награды
-Возможность получить сертификат
Мы тренируем не только знание алгоритмов, но и умение применять их тогда, когда рядом нет подсказок.
Проверь свои алгоритмические навыки и прокачай слабые места.
Регистрируйся на бесплатные тренировки!
Записаться онлайн
#реклама 16+
yandex.ru
О рекламодателе
6 608
Самое интересное в российском PostgreSQL этой осенью!
Регистрируйтесь на бесплатную конференцию по PostgreSQL и технологиям СУБД — Tantor JAM 2026. 10 сентября, Москва. 📅
Что будет на конференции:
✅ AI-first мониторинг СУБД: что уже сегодня можно передать ИИ-агентам и как меняется профессия DBA;
✅ аналитика и HTAP без внешней обвязки, внутри Postgres;
✅ как за два года изменился PostgreSQL для 1С;
✅ защита данных в Tantor Postgres.
Как всегда — технические доклады, живое общение с разработчиками и архитекторами, обмен опытом, а еще — вечерняя программа в честь пятилетия «Тантор Лабс».
Участие бесплатное.
10.09.2026, Москва
Зарегистрироваться
#реклама 16+
tantorlabs.ru
О рекламодателе
6 608
Хочешь попасть в Яндекс или прокачать ML?
Data Dojo — это не лекции, а разбор реальных задач из ML-соревнований и общение с экспертами Яндекса.
Здесь ты прокачаешь навыки, найдёшь команду и выйдешь на новый уровень — как настоящий data-самурай. Нетворкинг, карьерные инсайты и задачи, которые решают топы — всё в одном месте.
Встреча ML-комьюнити Data Dojo:
— общение с руководителями команд
— реальные кейсы из ML
— новые карьерные возможности
Это не просто встреча — это шанс выйти на следующий уровень, прокачаться в ML и получить карьерную консультацию от экспертов Яндекса.
Подай заявку бесплатно и начни свой путь data-самурая уже 9 сентября!
Записаться онлайн
#реклама 16+
yandex.ru
О рекламодателе
6 608
Как устроен hh.ru изнутри
Что происходит до того, как новая фича появляется у миллионов пользователей?
Показываем реальные кейсы, людей, инженерные решения и всё самое интересное из жизни IT-команд hh.ru.
Подписаться
#реклама
О рекламодателе
6 608
Битрикс24 представил Коворк/Код
Достаточно простыми словами описать, что нужно сделать, а Коворк/Код сам разберётся: найдёт информацию, поработает со сделками, чатами и документами, создаст или отредактирует файлы. Не нужно вручную искать информацию по разным разделам — Коворк/Код сделает это за вас.
Можно поручить ему сразу несколько дел и работать с ними параллельно. А в режиме «Код» он ещё и создаёт приложения под конкретные сценарии.
Собрать презентацию — Коворк/Код. Подготовить отчет — Коворк/Код. Получить благодарность от руководителя или клиента — вам.
Ранний доступ к Битрикс24 Коворк/Код уже открыт.
Получить предложение
#реклама 16+
cowork.bitrix24.ru
О рекламодателе
6 608
✈️Метод tell() используется для получения текущей позиции (смещения) при работе с файлами и файлоподобными объектами.
➡️Это позволяет:
—Узнать размер файла, сравнив позицию после чтения с начальной.
—Вернуться к определенной позиции с помощью
seek().
—Отслеживать прогресс обработки больших файлов.
—Получить позицию в строковых буферах и потоках байтов.
➡️Вот пример, который демонстрирует использование tell():
# Открываем файл для записи
with open('example.txt', 'w') as f:
f.write('Hello, World!')
# Получаем текущую позицию курсора
position = f.tell()
print(f'Current position after writing: {position}') # Вывод: 13, т.к. длина строки "Hello, World!" = 13
# Открываем файл для чтения
with open('example.txt', 'r') as f:
content = f.read(5) # Читаем первые 5 символов
position = f.tell()
print(f'Content read: {content}') # Вывод: Hello
print(f'Current position after reading: {position}') # Вывод: 5
⬆️В этом примере:
1. Мы открываем файл example.txt для записи и записываем в него строку "Hello, World!".
2. Используем tell(), чтобы получить позицию курсора после записи, что будет равно 13 (длина строки).
3. Затем открываем файл для чтения и читаем первые 5 символов.
4. Снова используем tell(), чтобы получить новую позицию курсора, которая будет равна 5 после чтения.
🐍Pythoner6 608
Не знак свыше, а точный таргетинг
Теперь всем, кто продвигается через CTV в Яндекс Директе, стало проще находить свою аудиторию.
Таргетингов стало в 5 раз больше. Вот что нового:
— Таргетинг по интересам. Например, можно выбрать не всех, кто интересуется спортом, а только любителей фитнеса или тенниса.
— Таргетинг по привычкам. Находите аудиторию по поведению в онлайне и офлайне — например, тех, кто регулярно посещает торговые центры или часто покупает товары в интернете.
— Более гибкие настройки. Можно сочетать интересы и социально-демографические характеристики с жанрами и тематиками контента.
👌 Используйте новые возможности, чтобы сделать рекламу на Connected TV еще эффективнее
Узнать больше
#реклама
yandex.ru
О рекламодателе
6 608
Онлайн-магистратура для IT: ИТМО, МИФИ + Яндекс
Программы онлайн-магистратуры ИТМО и МИФИ в партнёрстве с Яндексом. Актуальные знания, практическое обучение и гибкий график. Учитесь, совмещая с работой. Доступна господдержка оплаты, отсрочка от армии
Перейти на сайт
#реклама 16+
practicum.yandex.ru
О рекламодателе
