Руководство по использованию кортежей в Python
Python — это мощный и гибкий язык программирования. Это также один из лучших языков для начинающих, потому что он не только прост в изучении, но и не требует сложных компиляторов для запуска программ, вместо того, чтобы полагаться на интерпретатор. Таким образом, вместо того, чтобы создавать, компилировать и запускать программу, вы просто пишете ее и запускаете.
Python, по большей части, прост в освоении. Чтение текста из файлов, функция диапазона, типы данных и множество других тем ранее обсуждались на этом удобном для пользователя языке.
Однако не все концепции так просты для понимания. Кортеж является одним из таких понятий. Кортеж — это переменная, которая может содержать множество элементов в одной переменной. Хотя это действительно просто в использовании, если вы понимаете, что делает эта функция. Кортежи, как наборы, списки и словари Python, являются встроенными типами данных, но с ними проще работать.
Давайте посмотрим, что такое кортеж и как его написать/использовать.
Что такое кортеж и как он работает?
Кортеж Python похож на список тем, что предлагает простой способ объявления нескольких переменных.
Например, вместо указания ваших переменных следующим образом:
state1 = 'Virginia' state2 = 'Hawaii' state3 = 'New Mexico' state4 = 'California'
Затем вы можете распечатать следующий список переменных:
print(state1, state2, state3, state4)
Это замечательно и модно, но намного проще со списком. Список состояний будет выглядеть следующим образом для достижения того же эффекта:
states = ['Virginia', 'Hawaii', 'New Mexico', 'California']
Затем список может быть напечатан следующим образом:
print(states[0], states[1], states[2], states{3])
При использовании списков значительно проще эффективно определять эквивалентные переменные.
Кортеж — это набор значений, выраженных с помощью круглых скобок, подобно спискам. В качестве альтернативы этому списку рассмотрите следующее:
names = [‘Bobby’, ‘Sam’, ‘Betty’, ‘John’]
Кортежи форматируются следующим образом:
names = (‘Bobby’, ‘Sam’, ‘Betty’, ‘John’)
В чем разница между кортежем и списком, кроме очевидного использования [] vs ()? Проще говоря, вы можете изменить элементы списка (после того, как они были назначены), но вы не можете сделать это с кортежем.
Для программиста разница пока незначительна. Тот факт, что списки нельзя использовать в словарях, является одним из преимуществ использования кортежей по сравнению со списками (поскольку списки изменяемы).
Пожалуйста, подождите несколько секунд. О каком именно словаре вы говорите? В том смысле, что это набор данных, словарь Python сравним со списком. Словари — это версия ассоциативных массивов Python, и они используют пары ключ-значение следующим образом.
Кроме того, кортежи занимают меньше памяти, чем списки, что может повлиять на производительность программы — конечно, этот случай только иллюстрирует разницу в использовании памяти, и оба они оказывают относительно незначительное влияние на вашу программу. Вот простой пример:
alist = ['Harry', 'David', 'Bryan', 'Shep', 'Eric'] # list sys.getsizeof(l) 96 bytes of memory alist = ('Harry', 'David', 'Bryan', 'Shep', 'Eric') # tuple sys.getsizeof(l) 80 bytes of memory
Тем не менее, используя %%timeit, мы можем увидеть существенную разницу в выполнении этих двух циклов, с почти 25% улучшением для кортежей.
List Example 198 ns ± 1.69 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each) Tuple Example 151 ns ± 2.85 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
Это было краткое введение в кортежи. Исследуйте их.
Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter и LinkedIn. Присоединяйтесь к нашему сообществу Discord.