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

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

>> Python Форум Помощи!

Мы создали форум где отвечаем на все вопросы связанные с языком программирования Python. Ждем вас там!

>> Python Канал в Telegram

Обучающие статьи, видео и новости из мира Python. Подпишитесь на наш TELEGRAM КАНАЛ!

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

2 октября 2019 г. Archy Просмотров: 15968 RSS 1
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

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

Комментариев: 1
  1. Продажей ссылок только убить сайт