Рубріки: Решения

Коротко о главном: 5 самых мощных однострочников на Python

Богдан Мирченко

Разработчик Сурадж Гурав составил список из пяти самых мощных, по его словам, однострочников на Python — фрагментов кода, которые способны сделать его мощнее и чище при минимуме синтаксиса. Специалист использует их для анализа данных, а также для сложных задач автоматизации. Вот они. 

Зацикливание

В зависимости от назначения цикла for есть несколько способов выполнить операцию сжав код до одной строки. 

  • если в теле цикла for содержится только один оператор, код для вывода квадратов всех чисел от 10 до 15 будет выглядеть следующим образом:
for  k in range(10,16): print(k**2)

что получится: 

  • если цикл for используется для заполнения или создания списка, используйте функции понимания списка. В этом случае список квадратов всех чисел от 10 до 15 может быть создан так:
[k**2 for k in range (10,16)]

что получится: 

Что такое «Понимание списка», его плюсы и минусы с подробными примерами описаны в этом кратком руководстве. 

Назначение нескольких переменных

Однострочник для присвоения нескольких значений нескольким переменным будет выглядеть так:

var1, var2, var3 = 10, 99, 123
print(f"var1 is {var1}")
print(f"var2 is {var2}")
print(f"var3 is {var3}")

что получится: 

Более того, можно присваивать значения разных типов, такие как integer, float, string. Например:

var1, var2, var3, var4 = 9.99, 10, "Medium", True
print(f"var1 is {var1}")
print(f"var2 is {var2}")
print(f"var3 is {var3}")
print(f"var4 is {var4}")

что получится: 

Также одной переменной можно присвоить сразу несколько значений. Например:

var1 = 10, 9.99, "Medium"
print(var1)
type(var1)

что получится: 

Как видно из примера, все значения, присвоенные одной переменной, образуют кортеж. 

Перестановка местами элементов списка

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

var1, var2 = 10, 9.89
print(f"Before swapping var1 = {var1} and var2 = {var2}")
var1, var2 = var2, var1
print(f"After swapping var1 = {var1} and var2 = {var2}")

что получится: 

Менять местами можно любое количество переменных. Вот как это сделать с тремя:

var1, var2, var3 = 10, 9.89, "Medium"
print(f"Before swapping var1 = {var1}, var2 = {var2}, var3 = {var3}")
var1, var2, var3 = var2, var3, var1
print(f"After swapping var1 = {var1}, var2 = {var2}, var3 = {var3}")

что получится: 

Больше о том, как менять местами элементы, написано здесь. 

Удаление дубликатов элементов

Для записи кода для удаления дубликатов элементов в одну строку в Python можно использовать структуры данных. Просто преобразуйте список в множество! Например:

repeated_values_list = [1,2,1,3,1,"Hi",1.1,"Hi",True,"True",2.5,3]
duplicates_removed = list(set(repeated_values_list))
print(f"Original List = {repeated_values_list")
prtint(f"After removing duplicates = {duplicates_removed}")

что получится: 

Импортирование библиотек

pyforest — это пакет Python, который импортирует все часто используемые пакеты в одной строке. Его нужно установить отдельно. Для этого нужно выполнить следующую команду: 

pip install pyforest

Вместо того чтобы импортировать каждую библиотеку в программу по отдельности, импортируйте их все сразу с помощью следующего однострочника: 

import pyforest

После импорта pyforest все функции из часто используемых пакетов Python, такие как pd.DataFram(), np.arange(), sns.countplot() и sys.exit(), могут быть использованы напрямую. 

dir (pyforest) выводит список из 105 пакетов, импортированных pyforest

Примечание: при использовании однострочников помните о рекомендациях PEP-8 о максимальном количестве символов в строке. Их должно быть не более 79 символов.

А вот 25 полезных однострочников на JavaScript

Останні статті

Что такое прокси-сервер: пояснение простыми словами, зачем нужны прокси

Прокси (proxy), или прокси-сервер — это программа-посредник, которая обеспечивает соединение между пользователем и интернет-ресурсом. Принцип…

21.11.2024

Что такое PWA приложение? Зачем необходимо прогрессивное веб-приложение

Согласитесь, было бы неплохо соединить в одно сайт и приложение для смартфона. Если вы еще…

19.11.2024

Как создать игру на телефоне: программирование с помощью конструктора

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

17.11.2024

Google Bard: эффективный аналог ChatGPT

В перечне популярных чат-ботов с искусственным интеллектом Google Bard (Gemini) еще не пользуется такой популярностью…

14.11.2024

Скрипт и программирование: что это такое простыми словами

Скрипт (англ. — сценарий), — это небольшая программа, как правило, для веб-интерфейса, выполняющая определенную задачу.…

12.11.2024

Дедлайн в разработке: что это такое простыми словами

Дедлайн (от англ. deadline — «крайний срок») — это конечная дата стачи проекта или задачи…

11.11.2024