Python академия
7.4K subscribers
2.49K photos
5 videos
322 links
Учи Python быстро и легко.

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

Подходит для прокачки навыков кодирования.

По всем вопросам @evgenycarter
Download Telegram
Работа с датасетами

Datasets — легкая и расширяемая библиотека для обмена и доступа к наборам данных (они же датасеты).

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

Из плюсов библиотеки можно выделить следующее:

— Кэширование данных;
— Совместимость с NumPy, pandas, PyTorch, TenserFlow 2 и JAX;
— Все наборы данных отображаются в памяти.

Основные методы, которые понадобятся в работе с датасетами:

list_dataset() — показывает доступные датасеты;
load_dataset() — создает экземпляр датасета;
list_metrics() — показывает доступные метрики;
load_metric() — создает экземпляр метрики.

📲 Мы в MAX

Подписывайтесь на канал 👉@pythonofff
👍1
Альтернативный способ создания namedtuple

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

Доступ к элементам в namedtuple возможен как по индексу, так и по идентификатору.

📲 Мы в MAX

Подписывайтесь на канал 👉@pythonofff
👍2
🚀 Подборка полезных IT каналов в Max


Системное администрирование, DevOps 📌

https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.

1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌

https://max.ru/cpp_lib Библиотека C/C++ разработчика

Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика

Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика

GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных

Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков

Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов

Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻

Шутки программистов 📌
https://max.ru/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free

Книги, статьи для дизайнеров 📌

https://max.ru/odesigners Статьи, книги для дизайнеров

Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике

Вакансии 📌
https://max.ru/progjob Вакансии в IT

Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных


Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
👎2🤯1
Чтение аудио-файлов в массив numpy

Одним из основных действий в начале аудиоанализа конечно же является чтение аудио-файла и выгрузка его звукового временного ряда в виде массива numpy. Для этих целей хорошо подходит модуль scipy.io.wavfile, входящий в состав библиотеки scipy и предоставляющий функции для чтения и записи wav файлов.

Для чтения используем функцию read, которая возвращает частоту дискретизации и массив numpy со значениями звукового давления для каждого кадра. Т.к. файлы формата wav могут состоять из одного(моно) либо из двух(стерео) каналов, то и массив numpy будет, соответственно, являться одномерным либо двумерным (по подмассиву на каждый канал).

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

📲 Мы в MAX

Подписывайтесь на канал 👉@pythonofff
1👍1
Зачем использовать namedtuple вместо обычного словаря

Основным преимуществом namedtuple является то, что он занимает меньше места (памяти), чем аналогичный словарь.

Поэтому, в случае больших данных именованные кортежи эффективны.

Выполняя приведенный выше код, вы обнаружите, что namedtuple имеет размер 64 байта, тогда как словарь занимает гораздо больше — 240 байт. Это почти в 4 раза больше памяти.

📲 Мы в MAX

Подписывайтесь на канал 👉@pythonofff
👍3
🚀 Подборка полезных IT каналов в Max


Системное администрирование, DevOps 📌

https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.

1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌

https://max.ru/cpp_lib Библиотека C/C++ разработчика

Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика

Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика

GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных

Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков

Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов

Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻

Шутки программистов 📌
https://max.ru/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free

Книги, статьи для дизайнеров 📌

https://max.ru/odesigners Статьи, книги для дизайнеров

Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике

Вакансии 📌
https://max.ru/progjob Вакансии в IT

Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных


Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
Углубляемся в Итератор

Итератор нужен для доступа к объектам без раскрытия внутреннего предоставления.

Существует два вида итераторов: внешний,внутренний.

Внешний итератор — когда процессом обхода управляет клиент, с помощью магического метода next.

Внутренний итератор — принимает callback функции и уведомляет клиента о получение следующего элемента.

Сам итератор это объект, который возвращает свои элементы по одному разу. В Python это любой объект у которого есть магический метод next. Метод возвращает следующий элемент, если он существует, в другом случаи вернет StopIteration.

Так-же у каждого итератора должна быть метод iter, он возвращает сам итератор.

Интерфейса итератора состоит из first,next,current.

first — возвращает итератор к началу агрегата,что-то вроде reset.

next — переходит на следующий элемент агрегата, в случаи если нет следующего элемента, то будет StopIteration.

current — возвращает текущий элемент.

📲 Мы в MAX

Подписывайтесь на канал 👉@pythonofff
4👍1
UserList

UserList — это похожий на список контейнерный тип данных, который является классом-оболочкой для списков.

Синтаксис будет следующим: collections.UserList([list]).

Вы передаете обычный список в качестве аргумента userlist. Этот список хранится в атрибуте ‘data’ и доступен через метод UserList.data.

📲 Мы в MAX

Подписывайтесь на канал 👉@pythonofff
👍2🤔1
Конвертируем файлы в аудио-формате

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

Для загрузки файла нам нужно выбрать функцию from_ c соответствующим форматом в названии из класса AudioSegment. Также можно воспользоваться наиболее общей функцией from_file, передав путь к файлу и его формат.

Для экспорта файла с нужным форматом, в который мы хотели его сконвертировать, используем функцию export у полученного после загрузки файла объекта класса AudioSegment.

📲 Мы в MAX

Подписывайтесь на канал 👉@pythonofff
👍1
Как и когда можно использовать UserString

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

Предположим, вы хотите удалить определенное слово из текстового файла (где бы оно ни было). Возможно, некоторые слова в тексте неуместны.

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

📲 Мы в MAX

Подписывайтесь на канал 👉@pythonofff
👍2
Визуализация данных на карте с Folium

Folium позволяет как и привязать данные к карте для визуализации фоновых картограмм, так и передавать векторные, растовые, HTML визуализации в качестве маркеров на карте.

Библиотека поддерживает настраиваемые наборы фрагментов MapBox или Cloudmade.

Есть разные виды маркеров начиная с простого маркера местоположения в стиле листовки с всплывающим окном и всплывающей подсказкой HTML.

Вы так-же можете налаживать изображения, видео, GeoJSON и TopoJSON.

📲 Мы в MAX

Подписывайтесь на канал 👉@pythonofff
👍1