Senior Python Developer
40.8K subscribers
2.24K photos
6 videos
1 file
561 links
№ 4931117861
Публикуем интересные/полезные фичи/библиотеки языка.

По вопросам сотрудничества: @adv_and_pr

Канал на бирже:
https://telega.in/c/seniorpy
Download Telegram
Что выведет код?
Anonymous Quiz
15%
2
19%
22
6%
222
15%
2222
36%
Error
8%
Другое
🐍 Как сделать сайт на Python за 5 минут с помощью SSG-генератора Pelican

Нужно срочно сoздать сайт-визитку, резюме или портфолио, но не хочется использовать Wordpress и Tilda? Расскажем, как сделать сайт или блог за 5 минут с помощью SSG-генератора на Python.

https://proglib.io/p/kak-sdelat-sayt-na-python-za-5-minut-s-pomoshchyu-ssg-generatora-pelican-2022-04-18
Blanket — это приложение, написанное на Python, для воспроизведения различных фоновых шумов, которое повышает вашу продуктивность, помогая сосредоточиться.

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

https://github.com/rafaelmardojai/blanket/
Получаем формы сайта

С помощью пакета mechanize легко получить формы сайта для последующего входа в аккаунт или других действий.

Создаём объект браузера и с помощью функции forms возвращаем все формы.
Пакет mouse

Данный пакет предоставляет множество возможностей для работы с мышью. Например, для вывода положения курсора получаем его координаты из функции get_position(). Далее в примере делаем бесконечный цикл и выводим положение по осям X, Y.
Преобразование PNG в PDF

Для установки библиотеки img2pdf как всегда пользуемся менеджером pip — pip install img2pdf. Это пакет с открытым исходным кодом для преобразования изображений в формат pdf. Подробнее ознакомиться с библиотекой img2pdf можно здесь.
🐍 Вопрос века: какие кавычки использовать в Python – одинарные или двойные?

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

https://proglib.io/p/vopros-veka-kakie-kavychki-ispolzovat-v-python-odinarnye-ili-dvoynye-2022-02-10
Что выведет код?
Anonymous Quiz
53%
a b
47%
Error
Метод setdefault()

Метод словаря setdefault() возвращает значение указанного ключа, если он присутствует. Если ключ отсутствует, метод setdefault() вставляет пару key:value со значением по умолчанию и возвращает значение по умолчанию.
Оператор неравенства и Бэрри

1 апреля 2009 года выпустили PEP 401, в котором говорилось, что Гвидо ван Россум покидает команду Python.

На его замену должен был прийти Barry Warsaw, который имел официальный статус Friendly Language Uncle For Life (FLUFL) — в переводе "дружелюбный дядя языка на всю жизнь".

И этот Дядя Бэрри предложил заменить "противный" знак неравенства != на <>. Изменения обещали выпустить в последующих версиях, но его можно было протестировать и раньше времени.

Для этого можно импортировать barry_as_FLUFL из пакета __future__. Результат можете видно на картинке.

Это всё было первоапрельской шуткой, но оператор <> всё ещё доступен и является некой пасхалкой.
Удаление префиксов и суффиксов

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

Некоторые на полном серьезе для таких целей до сих пор пытаются использовать забагованные .strip и .lsrtip. Большинство просто не до конца понимают, как работают эти два метода.

В Python 3.9 были добавлены методы для строк .removeprefix и .removesuffix, предназначенные специально для удаления префиксов и суффиксов в строках.
Что выведет код?
Anonymous Quiz
26%
123
17%
1 2 3
8%
[1, 2, 3]
49%
Error
Проверка четности или нечетности числа без использования оператора %

Хотя этот трюк не намного лучше, чем использование оператора %, но иногда он эффективен (с большими числами).

Рассмотрим пару примеров:
k = 3
Двоичный: «11 & 1» будет 001, поэтому число нечетное
k = 4
Двоичный: «100 & 1» будет 000, поэтому число четное.
🐍 Создайте автотест Web UI на Python и Selenium за 7 шагов: инструкция для новичков

Если вам нужно тестировать веб-интерфейсы и логику отображения графических блоков на странице или просто автоматизировать работу в браузере, эта статья для вас. Читайте инструкцию по созданию автотеста на Python и Selenium за 7 простых шагов.

https://proglib.io/p/sozdayte-avtotest-web-ui-na-python-i-selenium-za-7-shagov-instrukciya-dlya-novichkov-2021-11-13
Аннотация типов

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

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

Основной фишкой модуля glob является удобная и лаконичная работа с поиском файлов по паттернам. Более того, можно даже пройтись по директориям рекурсивно.

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