python_academy | Unsorted

Telegram-канал python_academy - Python Academy

51359

Python Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu

Subscribe to a channel

Python Academy

BeautifulSoup 4: Инструмент для разбора HTML

Библиотека BeautifulSoup, часто называемая bs4, - инструмент для разбора и анализа HTML и XML документов в Python. Если вы работаете с веб-страницами и вам нужно извлечь информацию из HTML-кода, bs4 отлично подойдет для этого.

Установка bs4 также проста и выполняется через pip. С bs4 вы можете легко извлекать данные из HTML, навигировать по документу, находить и извлекать теги и их атрибуты. Это делает bs4 идеальным инструментом для веб-скрапинга, анализа веб-страниц, извлечения данных и многих других задач.

Читать полностью…

Python Academy

spotDL: Автоматизация загрузки музыки из Spotify

Библиотека spotDL - это мощный инструмент для автоматизации процесса загрузки музыки из Spotify. Если вы ищете способ легко и быстро получить аудиотреки с этой популярной стриминговой платформы, то spotDL может стать вашим идеальным партнером.

Установка spotDL также проста и выполняется через pip. Эта библиотека предоставляет удобные средства для поиска и загрузки музыки из Spotify. Она работает асинхронно и поддерживает асинхронный синтаксис с помощью async/await, что делает ее отличным инструментом для современных приложений, где требуется автоматизированный доступ к аудиоконтенту.

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

Библиотека spotDL не только удобна для скачивания музыки для личного пользования, но также может быть использована для создания аудиоархивов, подкастов или даже для автоматизации процесса создания музыкальных бэкапов.

#spotify #spotDL #аудио #автоматизация

Читать полностью…

Python Academy

Асинхронные запросы с aiohttp

Модуль aiohttp представляет из себя асинхронный HTTP клиент/сервер для asyncio и Python. Он позволяет выполнять асинхронные HTTP запросы, что делает его идеальным инструментом для современных приложений, где требуется высокая производительность и параллелизм.

Установка aiohttp производится через pip. Чтобы начать делать асинхронные запросы, вам потребуется взаимодействовать с ним с помощью синтаксиса async/await. Запросы, такие как GET, POST, PUT и DELETE, оформляются чисто и ясно. Объекты ответов содержат все необходимые атрибуты для обработки ответов от сервера.

Модуль aiohttp подходит не только для работы с асинхронными веб-сервисами, но и для асинхронного скрапинга веб-страниц.

#модули

Читать полностью…

Python Academy

Мощная декларативная библиотека для работы с датой и временем

Большинство разработчиков знают про модуль datetime из стандартной библиотеки - достаточно хороший инструмент для работы с временем. Но не лишним будет узнать про его мощное расширение - dateutil.

dateutil позволяет писать краткий и декларативный код для решения задач по взаимодействию с датой и временем.

На скриншоте показано получение первого дня прошлого месяца с помощью dateutil и без.

Примечательно то, что dateutil позиционируется как расширение для datetime, что значит, что они друг с другом совместимы.

Читать полностью…

Python Academy

Простой, мощный и асинхронный веб-фреймворк

Одним из популярных фреймворков для разработки серверной части на Python является FastAPI. К слову, он уже догоняет Django и Flask по звездам на GitHub.

FastAPI предназначен для быстрого и легкого старта работы с возможностью масштабирования до сложных приложений. Он является одним из самых быстрых фреймворков на Python.

Для создания минимального рабочего приложения достаточно кода выше. После запуска такого скрипта можете перейти в браузере по адресу http://127.0.0.1:8000/ и посмотреть результат.

#модули

Читать полностью…

Python Academy

Перечисления

Python поддерживает простой механизм работы с перечислениями, которые ещё называют enum. Подобные перечисления удобно использовать для хранения списков констант.

Из документации можно узнать о том, что Enum — это набор символических имён, привязанных к уникальным, неизменным значениям. Члены одного перечисления можно сравнивать на идентичность.

Также можно задать геттер через @property, который используют для получения перечислений в других форматах. В примере реализовано перечисление цветов в RGB, а через геттер их можно получить в формате hex.

#enum

Читать полностью…

Python Academy

Пишем асинхронных ботов для ВК

Под постом про проект подписчика, связанный с написанием ВК ботов, в комментариях упомянули про модуль vkbottle, про который сейчас и расскажем.

Библиотека является асинхронной и требует минимум кода со стороны разработчика, что позволяет сконцентрироваться на задаче, не тратя силы и время на само взаимодействие с API.

Код, написанный на vkbottle, чем-то похож на всем знакомый flask. А пример выше реализует бота, который отвечает сообщением "Здравствуй!" на "Привет".

#боты #vk

Читать полностью…

Python Academy

Упрощение создания операторов сравнения

Для создания объектов с поддержкой операторов сравнения в классе обычно требуется реализовать большое количество магических методов, а именно – __lt__, __le__, __eq__, __ne__, __gt__, __ge__.

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

В таком случае достаточно реализовать в классе только __lt__ и __eq__. Эти два метода являются минимумом, который нужен декоратору для конструирования остальных методов.

#классы

Читать полностью…

Python Academy

Режим разработки

Оказывается, еще в Python 3.7 появилась возможность запускать скрипты со специальным флагом -X для указания различных вариантов реализации.

Например, -X dev запускает скрипт в режиме разработки с функциями отладки и runtime-проверки, которые не используются по умолчанию из-за своей медлительности.

Также этот режим выводит дополнительные предупреждения в следующих случаях:

— Незакрытые файлы;
— Unawaited корутины;
— Неизвестная кодировка для str.encode;
— Проблемы с выделением памяти.

В целом, классная штука и имеет смысл периодически запускать скрипты в таком режиме, чтобы не упустить никакие баги.

#python

Читать полностью…

Python Academy

Очистка элементов в последовательности

Встроенный модуль itertools был создан для работы с более сложными случаями итераторов. Плюс модуля в том, что он быстро работает и оптимизирован в плане памяти.

Иногда возникает необходимость в удалении ненужных объектов последовательности. Как раз для этого и используют itertools, а именно метод compress.

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

Если логическое значения равно True или 1, то элемент сохраняется в последовательности, в противном случае — удаляется из нее.

#itertools

Читать полностью…

Python Academy

🚀 В Телеграм появился новый канал, на котором бесплатно учат кибербезу

CyberSec News — тут рассказывают, как защититься от хакеров, находить уязвимости в программах и сайтах и стать белым хакером.

Его ведет гик-специалист по безопасности, который фанатеет от киберпанка и самураев. Поэтому во все посты он вписывает прикольные японские фразочки.

А еще он понятно пишет и разъясняет работу каждой уязвимости на пальцах. Поэтому будет полезно почитать специалистам любого уровня.

Да и тем, кому просто нравится кибербез и самураи — тоже зайдет ;)

Заглядывайте, если хотите стать этичным хакером → @CyberNewsSe

Читать полностью…

Python Academy

Очистка элементов в последовательности

Встроенный модуль itertools был создан для работы с более сложными случаями итераторов. Плюс модуля в том, что он быстро работает и оптимизирован в плане памяти.

Иногда возникает необходимость в удалении ненужных объектов последовательности. Как раз для этого и используют itertools, а именно метод compress.

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

Если логическое значения равно True или 1, то элемент сохраняется в последовательности, в противном случае — удаляется из нее.

#itertools

Читать полностью…

Python Academy

Проверяем скорость интернета

Каждый хоть раз проверял скорость своего интернета на Speedtest. А у них, оказывается, есть не только сайт и приложения, но и пакет на Python для этого дела.

У объекта класса Speedtest методы download() и upload() выдают соответственно скорость скачивания и загрузки данных.

Методы отдают результат в байтах, поэтому для наглядности в примере я перевел все данные в мегабайты при выводе.

#speedtest

Читать полностью…

Python Academy

💪 О преимуществах Python сейчас не говорит только ленивый. И не просто так — этот востребованный язык программирования подходит для многих направлений: от бэкенд-разработки до Data Science. А его простой и понятный синтаксис, гибкость, множество фреймворков и активное комьюнити делает его удобным в работе.

Освоить Python-навыки под силу каждому на онлайн-курсе «Python Developer» от OTUS. У вас есть возможность бесплатно протестировать этот онлайн-курс! 

👉 Подключайтесь 24 августа в 20:00 на бесплатный урок «Работа с пакетами в Python с помощью pip и poetry». 

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

👉 Для участия и получения записи зарегистрируйтесь https://otus.pw/1cxO/

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: LjN8Jucdq

Читать полностью…

Python Academy

Хотите стать разработчиком, но не знаете, какой язык программирования выбрать? Вот несколько причин присмотреться к Python 👇🏻

✔️ Простой. Элементарный синтаксис легко понять и изучить
✔️ Запускается на разных платформах: MacOS, Linux, Windows, Android, iOS и других. Это удобно.
✔️ Имеет ускоренный цикл разработки. Ему не нужно время на сборку и компиляцию. Пишете строку кода — и видите результат.
✔️ Даёт гигантскую библиотеку готовых решений — от веб-разработки до искусственного интеллекта.
По данным hh.ru, зарплата новичка — 100 000 рублей, а на июль 2023 открыто 5 365 вакансий.

Освоить язык проще всего на онлайн-курсе Skillbox «Профессия Python-разработчик»: тут вам и удобный график, и личный куратор, и даже гарантия трудоустройства (подробные условия — на сайте)!

Переходите по ссылке, чтобы узнать подробности и забронировать местечко: https://goo.su/WSMmSa

Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880

Читать полностью…

Python Academy

Офигенный канал про работу с продуктом, но на примере живого нецифрового бизнеса.

Ребята за 2 года построили с нуля крупнейшую сеть self-service кофеен в России, с 2022 года развивают ту же бизнес-модель в Грузии и Дубае. Основатель и СЕО компании уже 1,5 года каждый день рассказывает обо всех инсайтах и факапах на пути к цели в 50 000 точек по всему миру.

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

Ребята масштабируются через привлечение инвестиций — предлагают инвестировать в кофейни в Дубае из любой точки мира. Сами всем управляют, инвесторы только получают часть прибыли каждый месяц или квартал в рублях, долларах или крипте. Доходность — 24,9% годовых в долларах, остальные цифры в канале.

Подписывайтесь, если интересно изучить или просто понаблюдать за тем, как ребята из России дизраптят старый добрый рынок кофе с собой)

Читать полностью…

Python Academy

GitVerse: новая разработка СберТех для взаимодействия программистов и разработчиков

Дочерняя компания Сбера СберТех разработала GitVerse — Open Source сервис для совместной разработки проектов и хостинга кода. Презентация состоялась в рамках конференции SmartDev 2023.

GitVerse хостится в России для устранения рисков в отказе доступа российским пользователем и создан для упрощения разработки, позволяя выполнять задачи по сборке, тестированию, развертыванию и проверке кода в общей среде. Сервис автоматизирует процессы, упрощает хранение кода и управление репозиторием, а также позволяет назначать задачи и комментировать.

Кроме того, GitVerse интегрируется с GigaCode, AI-помощником, который повышает эффективность кодирования.

«Сегодня весь мировой IT-рынок движется по направлению к Open Source, и важно чтобы российские разработчики имели все необходимые инструменты для созданий передовых технологических решений. Теперь у них появился сервис, с помощью которого они могут создавать программные проекты и быть уверены в сохранности доступа к ним, ведь это полностью отечественное решение, независимое от иностранных вендоров и технологий.
» - Андрей Белевцев, старший вице-президент, CTO, руководитель блока «Технологии» Сбербанка.

GitVerse бесплатно предоставит 2 ГБ для использования сервисных ресурсов, плагинов IDE для упрощения разработки и информационный портал с новостями и материалами с открытым исходным кодом.

Доступ к сервису откроется в начале 2024 года, а зарегистрироваться для раннего тестирования можно уже сейчас на странице проекта.

Читать полностью…

Python Academy

Ещё не записали ребёнка на программирование?

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

🎓 Выпускники школы:

- победители олимпиад: 90+ наград 
- чемпионы мира по робототехнике (WRO) 
- чемпионы по кибербезопасности: золотая медаль на MOSCOW CTF SCHOOL
- уже работают в Яндекс, Сбер, Kaspersky, VK и других топовых IT-компаниях.

✔️ Для школьников 3-10 классов! Сделайте первый шаг в большое будущее — регистрируйтесь на бесплатный открытый урок.

Реклама. ЧУ ДО "МОСКОВСКАЯ ШКОЛА ПРОГРАММИСТОВ". ИНН 9715290128. erid: LjN8K6kRM

Читать полностью…

Python Academy

IT-ипотека от 2,5%: все фичи от отделки до мебели

«Самолет» меняет представление о загородной жизни и предлагает проект, где максимально апдейтнули городской уровень комфорта — «Дмитров Дом».

🏘 Здесь классный фронтенд: готовые дома площадью от 61 до 225 м², полноценная экосистема, где все находится в шаговой доступности, а также единое оформление всех пространств. Можно взять MVP с базовой отделкой, а можно добавить в ипотеку полезных фич: кухню, мебель, баню, террасу и беседку.

🌐 Бэкенд тоже не подводит: все коммуникации, в том числе и высокоскоростной интернет, уже проведены — начинать спринты можно сразу после заезда. Работает профессиональная управляющая компания в доступе 24/7 в один клик в приложении — уникальная опция для ИЖС.

Преимущества проекта в его инфраструктуре, которая позволяет жить без забот: интернет даже на улице, коворкинг, поликлиника, школа, детский сад, магазины и кафе, конный клуб, собственный досуговый центр и многое другое — всё в шаговой доступности.

В сентябре загородный дом с участком можно взять в ипотеку со ставкой от 2,5% для IT-специалистов — платеж будет такой же, как за квартиру.

«Дмитров Дом» поможет по-новому взглянуть на загородную жизнь и удаленную работу. Если выбрать дом сейчас, то можно успеть встретить в нем Новый год! Выбрать дом можно по ссылке: https://smlt.ru/12popix

Реклама. ООО «СЗ «Самолет Девелопмент».

Читать полностью…

Python Academy

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

На курсе «Основы программирования» за час вы научитесь читать код и сможете написать свою первую строчку на языке Python. Вас ждут задачи в тренажёре, которые быстро помогут понять — интересно ли вам вообще программировать?

Если да, то разберётесь в основах и сможете  сделать следующий шаг к выбору конкретного направления.

Перейти к «Основам программирования»

Читать полностью…

Python Academy

SmartDev 2023 — большая конференция про технологии от Сбера

21 сентября в кинотеатре «Октябрь» пройдет технологическая конференция SmartDev 2023, организованная Сбером. На одной площадке соберутся ведущие инженеры и разработчики из Сбера, VK, Яндекса, Kaspersky и других компаний, чтобы обменяться опытом создания лучших технологических решений в мире.

Основные темы конференции:
– Машинное обучение и искусственный интеллект
– Архитектура программных решений
– DevOps
– Работа с большими данными
– Безопасность приложений
– Инновации и стратегии в разработке ПО

Кроме того, участники конференции смогут задать вопросы создателям нашумевших проектов от Сбера — сервиса GigaChat и нейросети Kandinsky, а также впервые в России услышать выступление генерального директора Gitee, китайского аналога GitHub.

Конференция соберёт 1500 участников в офлайне и несколько тысяч зрителей в онлайне.

Участие бесплатное, подробности и регистрация — на сайте конференции

Читать полностью…

Python Academy

У Яндекс Практикума есть бесплатный курс по основам Python-разработки. Программу составили опытные разработчики и методисты, чтобы вы сами могли освоить базу Python.

На курсе вы
— узнаете, какие задачи решает бэкенд-разработчик;
— будете писать код на Python — с первого урока;
— создадите программного помощника Анфису;
— узнаете, как устроено полноценное обучение в Практикуме.

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

Читать полностью…

Python Academy

💻 БЕСПЛАТНЫЕ КУРСЫ ПРОГРАММИРОВАНИЯ ДЛЯ ШКОЛЬНИКОВ 8-11 КЛАССОВ И КОЛЛЕДЖИСТОВ

ДОСТУПНЫЕ ПРОГРАММЫ ОБУЧЕНИЯ:
⭐ Разработка на Python
⭐ Разработка на C++
⭐ Разработка на JavaScript
⭐ Разработка на Java
⭐ Разработка многостраничного сайта на PHP
⭐ Разработка мобильного приложения на Java

IT-разработка - точно то, что нужно, если:
✔️ Школьник увлекается играми
✔️ Школьнику интересно устройство гаджетов
✔️ Школьнику нравятся всевозможные роботы и конструкторы

Для получения подробной информации переходите по ссылке 

Читать полностью…

Python Academy

Бесплатный курс VK Education: углублённый Python для студентов и недавних выпускников

Завершается набор на бесплатный онлайн-курс «Углублённый Python», обучение стартует уже 12 сентября. Если вы знакомы с базовыми принципами этого языка и стремитесь освоить его глубже, то этот курс создан специально для вас.

Программа включает как онлайн-занятия, так и очные лекции в московском офисе VK.

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

Отличительной особенностью курса является то, что успешные выпускники получат преимущество при трудоустройстве в VK.

Для подачи заявки на курс нужно поспешить — набор продлится до конца сегодняшнего дня! Подробная информация о программе размещена на странице курса и в статье на Хабре.

Читать полностью…

Python Academy

Нахождение наиболее частых элементов списка

Если необходимо найти несколько наиболее часто повторяющихся значений, лучше воспользоваться счетчиком Counter из библиотеки collections.

Метод Counter.most_common(x) возвращает x кортежей, в которых первое значение – элемент, а второе – количество его повторений.

#collections #counter

Читать полностью…

Python Academy

Именованные кортежи

Кортежи tuple, по своей сути, являются неизменяемыми списками. Структура данных удобная, но мы можем получать данные, используя только числовые индексы.

Нет возможности дать имена отдельным элементам, сохранённым в кортеже. Это может повлиять на читаемость кода. И в таком случае используют именованные кортежи namedtuple из collections.

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

#namedtuple

Читать полностью…

Python Academy

​​Сортировка пузырьком

Для сортировки списков в Python уже есть встроенные функция sorted() и метод .sorted(), но достаточно важно самому знать хотя бы несколько реализаций.

Суть алгоритма в том, что совершается несколько проходов по массиву. При проходе последовательно сравниваются пары элементов в массиве и в случае несоответствия выбранному порядку меняются местами. Если пары элементов находятся в верном порядке, то ничего не происходит.

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

#списки #сортировка

Читать полностью…

Python Academy

Дробные числа

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

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

Поэтому для идеальных вычислений лучше использовать Fraction, который представляет и хранит число в виде рациональной дроби.

#числа #fraction

Читать полностью…

Python Academy

Официальное упорядочивание словарей

Кстати, Python 3.7 на официальном уровне зафиксировал соответствие порядка перебора элементов словарей порядку их добавления.

Но для некоторых это не такая уж и новость, так как и в Python 3.6 словари уже были упорядочены, что видно на примере выше.

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

#словари

Читать полностью…

Python Academy

Режим разработки

Оказывается, еще в Python 3.7 появилась возможность запускать скрипты со специальным флагом -X для указания различных вариантов реализации.

Например, -X dev запускает скрипт в режиме разработки с функциями отладки и runtime-проверки, которые не используются по умолчанию из-за своей медлительности.

Также этот режим выводит дополнительные предупреждения в следующих случаях:

— Незакрытые файлы;
— Unawaited корутины;
— Неизвестная кодировка для str.encode;
— Проблемы с выделением памяти.

В целом, классная штука и имеет смысл периодически запускать скрипты в таком режиме, чтобы не упустить никакие баги.

#python

Читать полностью…
Subscribe to a channel