Найти в Дзене
Simple Prog

5 простых трюков в Python 3, делающих код понятнее и быстрее

Было ли у вас ощущение, что ваш код будет сложен для понимая или можно его ускорить? В сегодняшней статье расскажу вам о 5 конструкциях, которые помогут этого избежать! 1. Объединение списков без цикла Перед вами стоит задача: объединить два списка разной длины без использования цикла. Как бы вы ее решили? Один из вариантов - с помощью встроенной функции sum(), возвращающей сумму элементов последовательности: Также можно воспользоваться пусть и менее кратким, зато эффективным методом с использованием модуля itertools: При работе с последовательностями многие решения задач можно найти в модулях стандартной библиотеки collections (контейнерные структуры данных) и itertools (операции над последовательностями). 2. Обмен значениями с помощью кортежей Один из популярных трюков Python - обмен значениями без использования временной переменной. Применять можно с любым количеством переменных: 3. Проверка на анаграммность Класс Counter из уже известного нам модуля collections поможет проверить яв
Оглавление

Было ли у вас ощущение, что ваш код будет сложен для понимая или можно его ускорить? В сегодняшней статье расскажу вам о 5 конструкциях, которые помогут этого избежать!

1. Объединение списков без цикла

Перед вами стоит задача: объединить два списка разной длины без использования цикла. Как бы вы ее решили? Один из вариантов - с помощью встроенной функции sum(), возвращающей сумму элементов последовательности:

Также можно воспользоваться пусть и менее кратким, зато эффективным методом с использованием модуля itertools:

При работе с последовательностями многие решения задач можно найти в модулях стандартной библиотеки collections (контейнерные структуры данных) и itertools (операции над последовательностями).

2. Обмен значениями с помощью кортежей

Один из популярных трюков Python - обмен значениями без использования временной переменной. Применять можно с любым количеством переменных:

3. Проверка на анаграммность

Класс Counter из уже известного нам модуля collections поможет проверить являются ли строки анаграммами:

ptynoh - не плохое название для какого-нибудь продукта Икеи... Но мы отвлеклись.

Источник: https://unsplash.com/photos/G6k_uEjXygE
Источник: https://unsplash.com/photos/G6k_uEjXygE

4. Назначение переменных и функций по условию

Многие знают про тернарный оператор if/else, но знаете ли вы, что его также можно использовать для функций? Вот простой пример:

Интерпретатор выведет "Yes" в случае, если "C" будет в нашей строке string и "No", если нет. Теперь пример с функциями:

Функция multy(), как в предыдущем примере, будет вызвана если "С" будет в нашей строке, а иначе вызовется summary(), как показано в примере.

5. Нахождение самого повторяющегося элемента в последовательности

Рассмотрим два варианта. Первый будет с использованием функции max(), которая находит наибольший элемент в последовательности. Дабы найти самый частый элемент, достаточно преобразовать последовательность во множество функцией set() и передать в аргумент key метод count:

Второй способ подразумевает использование класса Counter из collections и его метода most_common(), в аргументах которого можно указать количество нужных элементов:

Итак сегодня мы рассмотрели некоторые трюки языка, которые точно будут вам полезны.

Напишите свое мнение об этих конструкциях в комментариях, а также не забудьте подписаться, если вам нравится такой контент!\

Читайте также: