Быстрый в изучении - мощный в программировании
>> Telegram ЧАТ для Python Программистов

Свободное общение и помощь советом и решением проблем с кодом! Заходите в наш TELEGRAM ЧАТ!

>> ВИДЕОКУРС Python Разработчик

Best Practice по решению прикладных задач и освоению инструментов, применяемых при разработке, веб-приложений.

>> ОНЛАЙН ТЕСТ Сможешь обучить робота?

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

Распаковка последовательности в отдельные переменные

2 октября 2019 г. Archy Просмотров: 1076 RSS Обсудить
Python для начинающих » Общие вопросы

В данной статье мы рассмотрим, как распаковать последовательность в отдельные переменные.

Задание для выполнение на Python

У вас имеется упорядоченный набор из N-значений. И требуется произвести распаковку данного кортежа в отдельные переменные.

Пример кода распаковки кортежа

Для распаковки любой последовательности N-элементов можно использовать способ присваивания. Основным условием при этом является, чтобы число и структура значений совпадала с той, которая была в упорядоченном наборе элементов. Рассмотри пример:

p = (4, 5)
x, y = p
 
print(x) # 4
print(y) # 5
data = ['ACME', 50, 91.1, (2012, 12, 21)]
name, shares, price, date = data
 
print(name) # 'ACME'
print(date) # (2012, 12, 21)
name, shares, price, (year, mon, day) = data
 
print(name) # 'ACME'
print(year) # 2012
print(mon) # 12
print(day) # 21

Если количество элементов не совпадет, то появится такая ошибка:

p = (4, 5)
x, y, z = p
 
Traceback (most recent call last):
 File "", line 1, in 
ValueError: need more than 2 values to unpack

Имея свой собственный сайт где вы публикуете новые статьи, вы можете начать на нем заработать. Биржа по продажи и покупки вечных ссылок rotapost.ru уже не первый год предлагает вебмастерам стабильный заработок, а рекламодателям качественные площадки для размещения рекламы.

Обсуждение примера кода на Python

Распаковка применяется не только с упорядоченным набором значений или списком, но и также с любимыми видами итераторов. Она работает со строками, файлами, генераторами. Например:

s = 'Hello'
a, b, c, d, e = s
 
print(a) # 'H'
print(b) # 'e'
print(e) # 'o'

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

data = [ 'ACME', 50, 91.1, (2012, 12, 21) ]
_, shares, price, _ = data
 
print(shares) # 50
print(price) # 91.1

Перед этим нужно убедиться, что вы больше нигде не использовали данное значение.

Оставьте комментарий!

Используйте нормальные имена.

Имя и сайт используются только при регистрации

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email. При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д., а также подписку на новые комментарии.

(обязательно)