Специально подобранный список самых полезных и удивительных пакетов Python от PyPI
Почему мы все любим Python? Для начала, это красивый и простой в освоении язык программирования. Еще одна причина: он поставляется с батареями в комплекте, что означает, что Python имеет много превосходных библиотек, включенных по умолчанию. Но на мой взгляд, именно 230 000 пользовательских пакетов делают Python действительно мощным и популярным .
1. Тире
Даш относительно новый. Он идеально подходит для построения приложений визуализации данных в чистом Python, поэтому он особенно подходит для всех, кто работает с данными. Даш-это смесь фляжки, сюжетно.js, и реагировать.JS.
Dash позволяет быстро собрать все, что вам нужно, в красивую панель мониторинга без необходимости касаться одной строки Javascript.
2. PyGame
Pygame-это модуль оболочки Python для мультимедийной библиотеки SDL . Simple DirectMedia Layer-это кроссплатформенная библиотека разработки, предназначенная для обеспечения низкоуровневого доступа к:
- Аудио
- клавиатура
- мышь
- джойстик
- графическое оборудование через OpenGL и Direct3D
Pygame является очень портативным и работает почти на каждой платформе и операционной системе. Хотя это полноценный игровой движок, вы также можете использовать эту библиотеку, чтобы просто воспроизводить MP3-файл прямо из ваших скриптов Python.
PyGame имеет свой собственный сайт, pygame.org , который включает в себя учебные пособия и инструкции по установке .
3. Pillow
Pillow является развилкой библиотеки изображений Python. Вы можете использовать библиотеку для создания эскизов, преобразования между форматами файлов, поворота, применения фильтров, отображения изображений и многое другое. Это идеально, если вам нужно выполнить пакетные операции на многих изображениях.
4. Colorama
С Colorama, вы можете добавить некоторый цвет к вашему стержню:
В случае, если вы хотите, чтобы это работало и на Windows, вам нужно будет позвонить colorama.init()до всего остального.
5. JmesPath
Использование JSON в Python очень просто, так как JSON так хорошо отображает словарь Python. Кроме того, Python поставляется со своей собственной отличной jsonбиблиотекой для разбора и создания JSON. Для меня это одна из лучших его особенностей. Если мне нужно работать с JSON, я рефлекторно обращаюсь к Python.
Но есть кое-что, чего ты, возможно, не понимаешь, что упускаешь. Если вы просто используете json.loads()и получаете данные из словаря вручную, возможно, с циклом здесь и там, вас ждет сюрприз.
JMESPath, произносимый "James path", делает JSON в Python еще проще. Это позволяет декларативно указать, как извлекать элементы из документа JSON. Вот некоторые основные примеры, чтобы дать вам ощущение того, что он может сделать:
Это просто касается поверхности всех его возможностей. Дополнительную информацию смотрите в документации и на странице PyPI.
6. Запросы
Requests строится на самой загруженной библиотеке Python в мире,urllib3. Это делает веб-запросы действительно простыми, но остается очень мощным и универсальным. Скорее всего, вы уже знаете это наизусть, но я не могу сделать этот список, не упомянув его!
Просто чтобы показать, как легко requests это может быть:
Это очень простой пример, но запросы также могут делать все передовые вещи, которые вы можете придумать, например:
- Идентификация
- Использование cookies
- Выполнение сообщений, ставит, удаляет и т.д.
- Использование пользовательских сертификатов
- Работа с сессиями
- Работа с прокси-серверами
- ... и еще очень многое!
Ссылки:
7. Simplejson
Что случилось с собственным json модулем в Python? - Ничего! На самом деле, это питон json simplejson. Это означает, что Python берет версию simplejson и включает ее в каждый релиз. Но использование simplejson имеет некоторые преимущества:
- Он работает на нескольких версиях Python.
- Он обновляется чаще, чем версия, поставляемая с Python.
- Он имеет (необязательные) части, которые написаны на C, что делает его очень быстрым.
8. Эмодзи
Это будет либо впечатлять, либо отталкивать, в зависимости от того, кто смотрит. На более серьезной ноте, это пригодилось, когда я анализировал данные социальных сетей .
Во-первых, установите модуль emoji:
1 pip3 install emoji
С этим установленным, вы можете сделать следующее:
1 import emoji
2 result = emoji.emojize('Python is :thumbs_up:')
3 print( result)
4 result = emoji.demojize('Python is 👍')
5 print( result)
Посетите страницу emoji package для получения дополнительных примеров и документации.
9. Cardet
Вы можете использовать chardet модуль для определения кодировки файла или потока данных. Это полезно при анализе больших стопок случайного текста, например. Но он также может быть использован при работе с удаленно загруженными данными, где вы не знаете, что такое кодировка.
После установки chardetу вас также есть дополнительный инструмент командной строки под названием chardetect , который можно использовать следующим образом:
chardetect somefile.txt
somefile.txt: ascii with confidence 1.0
Конечно, вы также можете использовать библиотеку программно, проверить документы .
10. Flask
Flask - это моя библиотека для быстрого создания веб-сервиса или простого веб-сайта. Это микрофрамовая работа, что означает, что колба стремится сохранить ядро простым, но расширяемым. Существует более 700 расширений, как официальных, так и от сообщества.
Если вы знаете, что вы будете разрабатывать огромное веб-приложение, вы можете вместо этого заглянуть в более полную структуру. Наиболее популярным в этой категории является Django .Flas
11. Python-dateutil
python-dateutilМодуль обеспечивает мощные расширения к стандарту datetime модуль. Это мой опыт, что где обычный питон datetime функциональные возможности заканчиваются, python-dateutil войти.
Вы можете сделать так много интересных вещей с этой библиотекой. Я ограничу примеры только одним, что я нашел особенно полезным: нечеткий разбор дат из файлов журналов и т. д:
1 from dateutil.parser import parse
2 logline = 'INFO 2020-01-01T00:00:01 Happy new year, human.' 3 timestamp = parse(logline, fuzzy= True) 4 print(timestamp) 5 # 2020-01-01 00:00:01
Смотрите полную документацию для получения дополнительных функций, таких как:
- Вычисление относительных дельт (следующий месяц, следующий год, следующий понедельник, последняя неделя месяца и т. д.) и относительных дельт между двумя заданными объектами даты.
- Вычисление дат на основе правил рекурренции, используя надмножество спецификации iCalendar.
- Реализация часового пояса (tzinfo) для файлов tzfile (/etc/localtime, /usr/share/zoneinfo и т. д.), строки среды TZ (во всех известных форматах), файлов формата iCalendar, заданных диапазонов (с помощью относительных дельт), часового пояса локального компьютера, фиксированного смещения часового пояса, часового пояса UTC и часовых поясов на основе реестра Windows.
- Внутренняя актуальная информация о мировом часовом поясе на основе базы данных Olson.
- Вычисление дат Пасхального воскресенья для любого заданного года с использованием западных, православных или Юлианских алгоритмов.