Разъяснивший 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
Выводим повторяющиеся элементы и количество их повторений

Функция 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
Капитализация слов строки

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

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

Разъяснивший Python
Как выполнить изменение типа данных элементов множества?

При помощи set comprehension мы также можем изменять типы данных элементов нашего множества.

Разъяснивший Python
Как выполнить создание дробей?

Класс Fraction в Python позволяет нам создавать свои экземпляры различными способами.

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

Разъяснивший Python
howdoi: StackOverflow прямо в терминале

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

Тогда вам нужен это суперполезный CLI-инструмент.

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