Рубрики
Без рубрики

Конвертировать кортеж в список | Самый питон путь

Ответ: Самый простой, самый простой и самый читаемый способ преобразовать кортеж в список – это встроенный список Python (Tuple). Вы можете пройти любой намек (например, кортеж, другой список или набор) в качестве аргумента в эту так называемую функцию конструктора и возвращает новую структуру данных списка, которая содержит все элементы … Конвертировать кортеж в список | Самый питонический путь Подробнее »

Автор оригинала: Chris.

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

Преобразование кортежа в список кажется тривиальным, я знаю. Но продолжай читать, и я покажу вам удивительные способы обращения с этой проблемой. Я гарантирую, что вы узнаете много ценных вещей с 3-5 минут, вы будете прочитать этот учебник! 🙂

Проблема : Учитывая кортеж элементов. Создайте новый список с теми же элементами – тем самым преобразовав кортеж в список.

Пример : У вас есть следующий кортеж.

t = (1, 2, 3)

Вы хотите создать новый список данных списка, которая содержит те же целочисленные элементы:

[1, 2, 3]

Давайте посмотрим на разные способы преобразования кортежа в список – и обсудить, что является самым питонным способом, в котором обстоятельство.

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

Упражнение : Запустите код. Скидка по каждому методу – какой вам нравится больше всего? Вы понимаете каждого из них?

Давайте погрузимся в шесть методов.

Метод 1: Список конструктор

Самый простые, самые простые и наиболее читаемый способ преобразовать кортеж в список – встроенный Python Список (итабельный) функция. Вы можете пройти любые намеки (такие как список , кортеж или Set ) в качестве аргумента в этот так называемый Функция конструктора И это возвращает новую структуру данных кортежей, которая содержит все элементы потенциала.

Вот пример:

# Method 1: list() constructor
t = (1, 2, 3)
lst = list(t)
print(lst)
# [1, 2, 3]

Это самый питонический способ, если плоское преобразование единого кортежа в список, это все, что вам нужно. Но что, если вы хотите преобразовать несколько кортежей в один список?

Метод 2: Распаковывать

Есть альтернатива, которая работает для Один или несколько кортежей преобразовать одну или несколько кортежей в список. Этот метод одинаково эффективен, и он занимает меньше персонажей, чем Метод 1 (на расходы читабельность для начинающих кодеров). Звучит интересно? Давайте погрузимся в Распаковка и астериск оператор Действительно

Оператор Звездочки * Также называется «Star Operator», и вы можете использовать его как префикс на любом кортеже (или списке). Оператор будет «распаковывать» все элементы во внешнюю структуру, например, в списках аргумента или в прилагающий тип контейнера, такой как список или кортеж.

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

# Method 2: Unpacking
t = (1, 2, 3)
lst = [*t]
print(lst)
# [1, 2, 3]

Вы распаковываете все элементы в кортеже T во внешнюю структуру [*t] . Сила этого подхода – несмотря на то, что даже совпадает, чем стандарт Список (...) Функция – что вы можете распаковать несколько значений в него!

Метод 3: Распаковка для преобразования нескольких кортежей в один список

Давайте посмотрим, как вы создадите список из нескольких кортежей:

# Method 3: Unpacking Multiple Tuples
t1 = (1, 2, 3)
t2 = (4, 5, 6)
lst = [*t1, *t2]
print(lst)
# [1, 2, 3, 4, 5, 6]

Выражение [* T1, * T2] Распаковывает все элементы в корза T1 и T2 во внешний список. Это позволяет конвертировать несколько кортежей в один список.

Способ 4: выражение генератора для преобразования нескольких кортежей в список

Если у вас есть несколько кортежей, хранящихся в списке списков (или список кортежей), и вы хотите преобразовать их в один список, вы можете использовать оператор выражения короткого генератора, чтобы перейти на все внутренние кортежи и по всем элементам каждого внутреннего кортежа. Отказ Затем вы размещаете каждый из этих элементов в структуру списка:

# Method 4: Generator Expression
ts = ((1, 2), (3, 4), (5, 6, 7))
lst = [x for t in ts for x in t]
print(lst)
# [1, 2, 3, 4, 5, 6, 7]

Это самый питонический способ преобразовать список кортежей (или кортежей) в кортеж. Это короткий и эффективный и читаемый. Вы не создаете никакой структуры данных помощника, которая принимает место в памяти.

Но что, если вы хотите сэкономить еще несколько символов?

Способ 5: выражение генератора + распаковка

Хорошо, вы не должны делать этот последний метод, используя оператор Звездочки – это нечитаемое – но я не мог не в том числе, включая его здесь:

# Method 5: Generator Expression + Unpacking
t = ((1, 2), (3, 4), (5, 6, 7))
lst = [*(x for t in ts for x in t)]
print(lst)
# [1, 2, 3, 4, 5, 6, 7]

Вместо того, чтобы использовать список(...) Функция для преобразования выражения генератора в список, вы используете [...] Структура помощника, чтобы указать, что это список, который вы хотите – и распаковать все элементы из выражения генератора в список. Конечно, это не очень читаемое – но вы могли видеть такую вещь на практике (если про кодеры хотят показать свои навыки;)).

Метод 6: Простой для цикла

Давайте закончим эту статью, показывая простую вещь – используя для петли Отказ Простые вещи – отличная идея в кодировке. И, хотя проблема более элегантно решена в Метод 1 (Использование Contrector Список () Конструктор), используя простой цикл для заполнения изначально пустого списка – это стратегия по умолчанию.

# Method 6: Simple For Loop
t = (1, 2, 3, 4)
lst = []
for x in t:
    lst.append(x)
print(lst)
# [1, 2, 3, 4]

Чтобы понять, как работает код, вы можете визуализировать его выполнение в интерактивном визуализации памяти:

Упражнение Как часто проверяется условие цикла?

Вы увидите такой простой метод преобразования в кодевых базах начинающих и программистов Python, которые переходят на Python, исходящие с других языков программирования, такие как Java или C ++. Это читается, но ему не хватает краткости.

Я надеюсь, тебе понравилась статья! Пожалуйста, найдите следующие статьи здесь:

Статьи по Теме:

  • Список Копирование
  • Список полное руководство
  • Конвертировать список в кортеж

Если вы хотите повысить свои навыки Python, я создал онлайн-академию, которая полностью основана на электронной почте (и это бесплатно).

Не стесняйтесь присоединиться к нашему большому сообществу амбициозных кодеров Python и загрузить бесплатные ресурсы Python (PDF чис).

Куда пойти отсюда?

Достаточно теории, давайте познакомимся!

Чтобы стать успешным в кодировке, вам нужно выйти туда и решать реальные проблемы для реальных людей. Вот как вы можете легко стать шестифункциональным тренером. И вот как вы польские навыки, которые вам действительно нужны на практике. В конце концов, что такое использование теории обучения, что никто никогда не нуждается?

Практические проекты – это то, как вы обостряете вашу пилу в кодировке!

Вы хотите стать мастером кода, сосредоточившись на практических кодовых проектах, которые фактически зарабатывают вам деньги и решают проблемы для людей?

Затем станьте питоном независимым разработчиком! Это лучший способ приближения к задаче улучшения ваших навыков Python – даже если вы являетесь полным новичком.

Присоединяйтесь к моему бесплатным вебинаре «Как создать свой навык высокого дохода Python» и посмотреть, как я вырос на моем кодированном бизнесе в Интернете и как вы можете, слишком от комфорта вашего собственного дома.

Присоединяйтесь к свободному вебинару сейчас!

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

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python одноклассники (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.

Оригинал: “https://blog.finxter.com/tuple-to-list/”