Обновить
512K+

Python *

Высокоуровневый язык программирования

346,25
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

PIP — Загрузка пакетов python для офлайн установки

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели51K

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

Читать далее

Tutorial: в gigachat появился function calling

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели9.2K

Недавно в документации к API GigaChat появился раздел, посвящённый работе с функциями, аналогично тому, как это реализовано в ChatGPT. Идея заключается в том, что модели передаётся информация о доступных ей функциях, и в зависимости от запроса пользователя модель может обратиться к этим функциям и добавить их результат к промту для генерации ответа.

Данный функционал ещё не доступен в gigachain и доступен через API только для модели "GigaChat-Pro-preview", и я хочу поделиться своим первым опытом его использования.

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

В моём примере, помимо информации о погоде, ассистент будет получать из гугл-таблицы цены на запрошенные продукты, и передавать их пользователю.

Читать далее

Банановые шкурки на интервью Python-разработчика

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели17K

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

Читать далее

Основы метаклассов в Python: Простое понимание и примеры

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели14K

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

Читать далее

Интеграция Grist и Metabase

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели6.9K

Привет! Меня зовут Александр Ежков, я Backend-разработчик в AGIMA. Занимаюсь созданием и поддержкой внутренних сервисов для компании. А конкретно сейчас — нашей DWH-системой. Мы построили ее из Open-source продуктов. В этой статье расскажу, какие продукты мы используем, какие хитрости придумали для работы с ними как вся система работает вместе.

Читать далее

Быстрый запуск pet-проекта на Python и PostgreSQL

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели13K

Уверен, небольшие pet-проекты полезны не только для прокачивания навыков, но и для отвлечения от рабочей рутины и - нередко - для решения небольших практических задач. 

Курс рубля, как водится, - всегда актуальная тема. И на естественное желание быть в курсе курса рубля, лично у меня, возникает такое же естественное желание реализовать pet-проект. И естественно, это нужно сделать в виде телеграм-бота. 

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

Про использование Python понятно из сабжа, ну а добиться максимально быстрого запуска нам позволят встроенные CI/CD процессы от Amvera, которые буквально из кода соберут работающий сервис. 

Детали под катом

Поиск с подкреплением на ориентированных взвешенных графах

Время на прочтение5 мин
Охват и читатели2.7K

Мир абстракции выхолощено чист. Реальность и не полна, и изменяема. Задача статьи показать как можно скрестить поиск с обучением и взвешенные ориентированные графы.

Читать далее

Python streaming (spark+kafka)

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели7.5K

В этой статье, посвященной Python streaming с использованием Spark и Kafka мы рассмотрим основные шаги по настройке окружения и запуску первых простых программ

Читать далее

Разбор задач «Квеста на миллион»

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели5K

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

Читать далее

Мега-Учебник Flask Глава 3: Веб-формы (издание 2024)

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели36K

В главе 2 я создал простой шаблон для домашней страницы приложения и использовал поддельные объекты в качестве заполнителей для того, чего у меня еще нет, например, пользователей и записей в блоге. В этой главе я собираюсь устранить одно из многих недостатков, которые у меня все еще есть в этом приложении, в частности, как принимать входные данные от пользователей через веб-формы.

Начать изучение

Python для анализа годовых температур в Москве

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели6.2K

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

Для начала, вам потребуется получить доступ к погодным данным. Вы можете использовать API, такие как OpenWeatherMap API, для получения данных о погоде. OpenWeatherMap API предоставляет доступ к текущим и историческим данным о погоде по всему миру.  

Продолжить

Pandas: от хаоса к красоте кода

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели20K

Работа с pandas.DataFrame может превратиться в неловкую кучу старого (не очень) доброго спагетти-кода. Я и мои коллеги часто используем эту библиотеку, и хотя мы стараемся придерживаться хороших практик программирования, иногда мы все равно мешаем друг другу, создавая запутанный код.

Я собрала несколько советов и подводных камней, которых следует избегать, чтобы сделать код на pandas чистым. Надеюсь, вам они тоже будут полезны. Также я буду ссылаться на классическую книгу Роберта Мартина «Чистый код: создание, анализ и рефакторинг».

Погнали!

Сказ о том, как я эмулятор Intel 4004 на Python писал (часть 2)

Время на прочтение4 мин
Охват и читатели3.3K

Небольшой дисклеймер: перед прочтением данной статьи ознакомьтесь с первой частью, дабы вникнуть в суть происходящего. Желаю вам приятного прочтения :)

Это вторая часть о том, как я писал и продолжаю писать и улучшать эмулятор Intel 4004 с очень ограниченным функционалом на языке Python. В этот раз я решился переписать эмулятор с нуля, исправив довольно весомые ошибки предыдущего эмулятора..

Читать далее

Ближайшие события

Класс Reverse Mapping на Python

Время на прочтение4 мин
Охват и читатели3K

SupperMapping - это класс Python, который предоставляет удобный интерфейс для работы со словарями с возможностью обратного отображения.

Читать далее

Микросервис на Python+ FastAPI

Уровень сложностиПростой
Время на прочтение19 мин
Охват и читатели51K

Микросервис — это подход к разбиению большого монолитного приложения на отдельные приложения, специализирующиеся на конкретной услуге/функции. Этот подход часто называют сервис-ориентированной архитектурой или SOA.

В монолитной архитектуре каждая бизнес-логика находится в одном приложении. Службы приложений, такие как управление пользователями, аутентификация и другие функции, используют одну и ту же базу данных.

В микросервисной архитектуре приложение разбивается на несколько отдельных служб, которые выполняются в отдельных процессах. Существует другая база данных для разных функций приложения, и службы взаимодействуют друг с другом с использованием HTTP, AMQP или двоичного протокола, такого как TCP, в зависимости от характера каждой службы. Межсервисное взаимодействие также может осуществляться с использованием очередей сообщений, таких как RabbitMQ , Kafka или Redis .

Читать далее

Анализ новостей с помощью сегментации и кластеризации временных рядов

Время на прочтение10 мин
Охват и читатели12K

В Отусе я прошла курс ML Advanced и открыла для себя интересные темы, связанные с анализом временных рядов, а именно, их сегментацию и кластеризацию. Я решила позаимствовать полученные знания для своей дипломной университетской работы по ивент-анализу социальных явлений и событий и описать часть этого исследования в данной статье.

Шаг 1. Сбор данных

В качестве источника данных я взяла информационно-новостной ресурс Лента.ру, так как с него легко парсить данные, новости разнообразны и пополняются в большом объеме ежедневно. Для теста я спарсила новости за последний год (март 2023 – март 2024) с помощью питоновских BeautifulSoup и requests.

В коде происходит процедура сбора заголовка, даты и тематики новостей:

Читать далее

Что стоит почитать по Python в 2024 году? Пять хороших книг

Время на прочтение3 мин
Охват и читатели33K

Литературы никогда не бывает много — ни художественной, ни технической. Это касается и книг по языкам программирования, включая Python. Разработчикам, как начинающим, так и опытным, нужны надёжные руководства для того, чтобы повышать свой профессиональный уровень. В сегодняшней подборке — пять книг, которые могут быть полезны для любого Python-разработчика.

Читать далее

Эффект Монреаля: почему языкам программирования нужен Царь стилей

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели11K

Давайте представим нереалистичный сценарий, где вы выбираете язык программирования для проекта, который в перспективе станет очень большим. Допустим, это будет набор сервисов в монорепозитории, над которыми работает более 100 человек. Чтобы сделать этот сценарий ещё менее реалистичным, предположим, что вы игнорируете типичные ограничения, например, не учитываете, сможете ли использовать сборщик мусора, и впишется ли поставленная задача в конкретный стек технологий.

Пусть это будет мысленный эксперимент. Подыграйте мне. Если вы читали мою прошлую статью (англ.), то должны правильно предположить, что я бы предпочёл экспрессивный язык, ориентированный на профессионалов. Так и есть. Но в гибком языке программирования есть серьёзная проблема с масштабированием – слишком много стилей оформления кода и способов его написания. В итоге просто не обойтись без руководств по стилю, которые помогут сориентироваться в правильной реализации.

Какое подмножество C++ или Kotlin вы используете? Что вы предпочтёте: project.toml или requirements.txt? Теперь у вашего языка есть возможность поэтапной типизации с помощью аннотаций типов. Хотите ей воспользоваться? Как вы реализуете конкурентность: с помощью многопоточности, Tokio или std::async?

Чем более экспрессивный язык, тем сложнее всё становится. И здесь на сцену выходит Go. И речь не только о gofmt, но и о его стандартной библиотеке и согласованности. В Kotlin вам приходится гадать, что лучше использовать для ошибок: исключения или объекты Result? В случае же Go вам всё ясно – ищем err. Да, это многословно, но зато предсказуемо.

Экспрессивные языки прекрасны, но часто создают путаницу. Вы можете использовать богатый и комплексный язык, поддерживающий миллион способов реализации одного и того же. Именно это я хочу вам показать. Как же сохранить всю эту мощь, но уменьшить беспорядок? Как избежать возникновения 500 поддиалектов? Но прежде, чем переходить к решениям, обсудим Scala.
Читать дальше →

Превращаем голосовое сообщение в структурированную заметку

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели2.8K

Вы когда-нибудь оказывались в ситуации, когда голова была полна идей, но записать их нет возможности? Тогда вы знаете, как бывает сложно быстро и качественно зафиксировать свои мысли. А может вам знакома ситуация, когда собеседник записывает голосовое сообщение на 5 минут с описанием какого-нибудь проекта, и вам приходится переслушивать его снова и снова, чтобы понять все детали. Столкнувшись с этим, я решил сделать Telegram-бота, который может превратить голосовое сообщение в структурированную заметку.

Читать далее

NTW3 Объяснение Примера

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели1.2K

Объяснение того, как пользоваться моим очередным (возможно) бесполезным проектом-велопипедом.

В статье подробно объясняется большинство моментов и приннципов работы NTW3. я старался сделать создание сайтов больше похожим на создание обычным приложений, благодаря чему получился необычный подход. Надеюсь, будет интересно почитать!

Читать далее