Python Skills 🐍
303 subscribers
1.02K photos
17 videos
302 links
Канал полезного и юмористического контента на тему программирования, в частности такого языка как Python.

По всем вопросам: @andrey_andrey01
Download Telegram
Сжатие списка

Этот скрипт удаляет «ложные» значения (False, None, 0 и пустую строку ' ') из списка. Используется встроенная функция filter(): c параметром None на первом месте она удалит из списка lst все значения, которые не вернут True по умолчанию.

Проверить вручную какое-либо значение на True/False можно с помощью функции bool(): bool(0) вернёт False, но bool('0') уже будет True, так как это непустая строка.
получил образование, считаешь себя специалистом в своей сфере

так же ты в первый день на работе:
Это тянет на отдельный спринт
До боли знакомое чувство 🌚
Работа с ChainMap из collections

СhainMap группирует несколько словарей или других сопоставлений вместе, чтобы создать единое представление.

Иногда нам нужно сгруппировать словари в один или же работать с множеством словарей как с одним, в этом случае вам поможет ChainMap.

Немного про особенности ChainMap:

— Представляет тот же интерфейс, что и словарь, но с дополнительными возможностями;
— Создает обновляемое представление;
— Видит внешние изменения во входных отображениях.

#collections
🔥1
Знакомство с BeatifulSoup

BeatifulSoup - библиотека предназначенная для парсинга html и xml файлов. В комплекте все, что необходимо для парсинга нужных элементов. Используется в промышленных масшатабах. Умеет проходиться по дереву, парсить группы элементов.

В примере, парсим html документ. С самым простым содержимым.

#Python
Краткая упорядоченная итерация

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

#Python
Логирование в объектах Python

Один из лучших способов контролировать адекватность поведения вашего кода — логирование. Да и не только вашего. Когда разбираешься в чужом коде логирование тоже приходится кстати. В Python для этого существует модуль logging.

Как извлечь максимум пользы из logging, рассказали тут:

https://habr.com/ru/post/649033/
all и any

Одна из многих причин популярности Python — его читабельность и выразительность.

Часто шутят, что Python — это «исполняемый псевдокод». Однако когда вы можете писать код таким образом, становится сложно не согласиться.

#Python
Объект timedelta в Python

Объект timedelta в Python используется для простого выполнения манипуляций с датой и временем. Класс timedelta является частью модуля datetime.

Объект timedelta представляет собой продолжительность времени. Мы можем создать его объект, используя следующий метод.
🔥1
Обработка исключений

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

Существует базовое исключение BaseException от которого наследуются все остальные исключения.

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

Стоит учесть, что мы можем делать бесконечное количество вложенных блоков.

Грамотным способом является вылавливать только те исключения, которые мы ожидаем.

#exceptions
Каждый программист когда код не работает:
howdoi

Зависли над какой-то проблемой и не можете вспомнить её решение? Нужно зайти на StackOverflow, но не хочется покидать терминал?

Тогда вам не обойтись без этого инструмента командной строки:

 $ pip install howdoi

Задайте любой вопрос, и он постарается найти ответ на него:

 $ howdoi vertical align css
$ howdoi for loop in java
$ howdoi undo commits in git

Но будьте осторожны: он извлекает код из топовых ответов на StackOverflow и не всегда даёт полезную информацию:

$ howdoi exit vim

#Python
arrow - одна библиотека, чтобы править всеми!
Как вы знаете, в Python для работы с датами и временем есть целая куча модулей: datetime, time, calendar, dateutil, pytz и т.д.

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

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

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