Разъяснивший Python – Telegram
Разъяснивший Python
7.71K subscribers
2.77K photos
40 videos
30 files
2.65K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Подсчет количества элементов

Этот лайфхак полезен для подсчета всех появляющихся элементов с помощью встроенной библиотеки Python. Вместо использования циклических и условных операторов и прочей логики, просто следуйте логике этого кода.

Разъяснивший Python
Наиболее частый элемент в списке

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

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

Разъяснивший Python
👍1
Повторение элемента в списке

Чтобы увеличить количество строк, можно использовать звездочку *. Но этот лайфхак применим и к спискам.

Разъяснивший Python
Выводим повторяющиеся элементы и количество их повторений

Функция groupby() позволяет получить повторяющиеся элементы в итераторе и сгруппировать их.

Разъяснивший Python
Клонирование объекта без copy через dataclasses.replace

Если вы работаете с dataclass и хотите создать копию объекта, изменив лишь пару полей, то можно использовать dataclasses.replace. Это удобнее и чище, чем вручную копировать все значения.

Итог:
replace из dataclasses — быстрый способ клонировать объект с изменением выбранных атрибутов.

Разъяснивший Python
Функция в одну строку

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

Разъяснивший Python
Flask: Интерфейсы прикладного программирования

Продолжаем делиться циклом статей, благодаря которому ты научишься пользоваться Flask. В этот раз автор рассказывает, как расширить microblog с помощью интерфейса прикладного программирования (API).

Читать...

Разъяснивший Python
Функция update_wrapper и декоратор wraps

update_wrapper позволяет копировать атрибуты с оригинальной функции на обертку. А wraps делает то же самое, только как декоратор. Делимся видео, где автор наглядно демонстрирует применение update_wrapper и wraps.

Смотреть...

Разъяснивший Python
Объединение итерируемых объектов с itertools.chain

Когда у тебя есть несколько списков, кортежей или других итерируемых объектов, и нужно пройти по ним, будто это один большой список — chain делает это без создания промежуточных структур.

Итог:
itertools.chain позволяет объединять итерируемые объекты "на лету" без лишнего потребления памяти. Полезно для работы с большими наборами данных.

Разъяснивший Python
Django-command

В Django command — это специальная команда, которую можно запустить через консоль для выполнения определённых задач в проекте. Такие команды используются для автоматизации различных процессов, например, миграции базы данных, создания суперпользователя, или даже для более сложных задач вроде сбора данных, очистки кэша и т.д. Делимся статьей, где автор рассказывает про данную команду.

Читать...

Разъяснивший Python
Как транспонировать 2d-массив?

Э
тот лайфхак покажет, как выполнить транспонирование 2d-массива с помощью метода zip.

Разъяснивший Python
🤔2
Время, затраченное на выполнение части кода

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

Разъяснивший Python
Как делать многострочные комментарии в Python

Для размещения комментария мы используем многострочные строки (multi-line strings). Они начинаются и заканчиваются тремя кавычками (сами кавычки могут быть как двойными, так и одинарными).

Разъяснивший Python
Type hints: указания типов

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

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

В современном стандарте Python появилась возможность добавлять определение типа на стадии разработки.

Разъяснивший Python
👍1👎1
Вложенные списковые включения

Если expression может быть любым валидным выражением Python, оно также может быть и другим list comprehension. Это полезно, когда необходимо создать матрицу

Разъяснивший Python
Использование подчеркивания c REPL

Вы можете получить результат последнего выражения в Python REPL с помощью оператора подчеркивания, например, в Python REPL

Разъяснивший Python
Объединение двух словарей

А этот фрагмент кода пригодится при работе с базами данных и файлами JSON, когда нужно объединить данные из разных файлов или таблиц в общий файл. Объединение двух словарей таит в себе ряд опасностей, например возможность появления повторяющихся ключей.

Разъяснивший Python
2
Try else

else можно использовать как часть блокаtry/except. Ветка else выполнится, если при выполнении никаких исключений не выброшено

Разъяснивший Python
Operator overloading: перегрузка операторов

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

Например, вы думали о том, почему с помощью оператора + можно и складывать числа, и конкатенировать строки? Это живой пример перегрузки.

Разъяснивший Python