Python - Советы, библиотеки, гайды
19.6K subscribers
1.17K photos
25 videos
6 files
590 links
Всё для Python программиста :3
Готовый код, советы, лайфхаки, годные библиотеки, уроки и многое другое!

Автор - Абрахам (@priler)

РКН: https://kurl.ru/uXZzR
Download Telegram
Хочу такой же 🌚
👍245🔥40🤩26😁10💩98😢2
arrow - одна библиотека, чтобы править всеми!
Как вы знаете, в Python для работы с датами и временем есть целая куча модулей: datetime, time, calendar, dateutil, pytz и т.д.

Так вот arrow призвана исправить этот хаос.
Она содержит в себе сразу все необходимые методы для работы с датами и временем.
И вам достаточно импортировать только её.

Ставится командой pip install arrow
Документация и примеры кода здесь.
👍77🔥5💩2
Ничего особенного, просто питон тепло оделся 🌚
👍176😁3722🔥11😱2🤩2💩1
retry - маленькая, но полезная библиотека, добавляющая одноименный декоратор.
Всё что он реализует - это повторные попытки.
Что бывает полезно, например, в парсерах или ботах - когда возникают неполадки с сетью.

Так вот с этой либой, вам не придется прописывать try ... except.
Достаточно добавить декоратор @retry и настроить его по своему желанию.
Функция будет повторяться в случае ошибки.

Ставится командой pip install retry
Документация и примеры кода здесь.
👍52🔥9🤩3💩1
watchdog - крутая библиотека для мониторинга событий файловой системы.
Например, можно отслеживать событие изменения/создания файла и что-то потом делать.
Принцип примерно тот же, что и у аналогичной библиотеки для NodeJS.

Ставится командой pip install watchdog
Документация и примеры кода здесь.
🔥38👍10🤩2
ujson - это ультрабыстрый энкодер/декодер JSON.
В отличии от встроенного simplejson и других подобных библиотек, эта побеждает практически во всех тестах производительности.
Так что если вы делаете проект, где надо часто и много работать с форматом данных JSON, тогда ваш выбор - это ultrajson.

Ставится командой pip install ujson
Документация, примеры кода и замеры скорости - здесь.
🔥35👍6💩1
Кстати, если вы вдруг не замечали, на официальном сайте Python есть раздел для чего нужен Python:
- Веб разработка (Django, Flask и тд)
- Наука и исследования (SciPy, Pandas и тд)
- Изучение программирования (написано, что Python это отличный язык чтобы начать программировать)
- Десктоп приложения (wxWidgets, Kivy, GTK+ и тд)
- Боты, софт, бизнес логика и тд.

Повторюсь, - это всё перечислено на официальном сайте.
Согласны? 🤔
🔥158👍649🤩6💩3🎉2😱1
pluggy - маленькая, но полезная библиотека для создания хуков и плагинов.

И по сути это гораздо лучше, чем method overriding или же monkey patching.
Особенно, когда сразу несколько плагинов изменяют поведение вашей программы.
Pluggy решает эту проблему.

Ставится командой pip install pluggy
Документация и примеры кода здесь.
👍19😁3💩2
Табы или пробелы для отступов?
Anonymous Quiz
83%
Табы
17%
Пробелы
😱97💩60🎉18😁16😢13👍9🔥7🌚1
🐍 А вы знали? Выпуск №16

Метод .clear() для очистки списка/сета/словаря.
👍111💩9🔥53😢2
🐍 Совет по Python №6.

Использование условий прямо в функции print.
👍157🔥26💩179😱7😁1
Python Slugify - это маленькая, но полезная библиотека для транслитерации строк с поддержкой юникода.

Например, из строки привет мир он сделает privet mir.
Что бывает крайне полезно, например, при построении ЧПУ структуры ссылок на сайтах.
И не только.

Ставится командой pip install python-slugify
Документация и примеры кода здесь.
👍515💩4
bcrypt - полезная библиотека, реализующая одноименный алгоритм криптографической хеш-функции BCRYPT.
Предназначенной для эффективного шифрования паролей с целью последующего сравнения с инпутом.

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

Ставится командой pip install bcrypt
Документация и примеры кода здесь.
👍26😱2💩1
🐍 А вы знали? Выпуск №17

Получение расположения модуля через код.
🔥74👍32💩8😱3😢2🤩2🎉1
humanize - очень полезная библиотека для перевода различных данных в человеко-понятный формат.
Например, она может перевести 1001 секунду в строчку "16 минут".
Или вот datetime.now() - timedelta(seconds=3600) переведёт как "час назад".

Крч топ штука 🔥
Очень часто пригождалось такое на работе.
А тут еще и поддержка мультиязычности из коробки.

Ставится командой pip install humanize
Документация и примеры кода здесь.
🔥46👍15
tinydb - это крайне простая в использовании документная база данных.
Для хранения данных она использует формат файла .json.
Для не сложных ботов и простеньких утилит - лучше не придумать.

Ставится командой pip install tinydb
Документация и примеры кода здесь.
👍34😱1