Как создавать и использовать кортежи в Python

Как создавать и использовать кортежи в Python

Кортеж - это набор неизменяемых объектов Python. Он может содержать элементы любого произвольного типа данных (целое число, строка, число с плавающей запятой, список и т. Д.), Что делает его гибкой и мощной структурой данных. Он является частью основного языка Python и широко используется в программах и проектах Python.





Создание кортежа

Кортеж в Python можно создать, заключив все элементы, разделенные запятыми, в круглые скобки. () .





t1 = (1, 2, 3, 4)
t2 = ('Make', 'Use', 'Of')
t3 = (1.2, 5.9, 5.4, 9.3)

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





Создание пустого кортежа

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

emptyTuple = ()

Создание кортежа с одним элементом

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



# t1 is a tuple
t1 = ( 3.14, )
print( type(t1) )
# prints
# t2 is not a tuple
t2 = ( 3.14 )
print( type(t2) )
# prints

Примечание: тип() Функция возвращает тип класса объекта, переданного в качестве параметра.

Отсутствие запятой после элемента приводит к типу класса t2 как «float», поэтому обязательно использовать запятую после элемента при создании кортежа с одним значением.





Создание кортежа с разными типами данных

Элементы кортежа могут быть любого типа данных. Эта функция делает кортеж универсальным.

лучшие приложения для android tv box 2019
tup1 = ( 'MUO', True, 3.9, 56, [1, 2, 3] )
print( tup1 )
# prints
('MUO', True, 3.9, 56, [1, 2, 3])

Создание кортежа с помощью конструктора tuple ()

Кортежи также можно создавать с помощью кортеж () конструктор. Используя конструктор tuple (), вы можете преобразовывать последовательности, такие как список / словарь, в кортеж.





tup1 = tuple( (1, 2, 3) )
print( tup1 )
# prints
(1, 2, 3)

Создание вложенного кортежа

Кортежи можно легко вкладывать в другие кортежи. Вы можете вложить кортеж на любой желаемый уровень.

tup1 = (1, 2, 3)
tup2 = ( 'Hello', tup1, 45 )
print( tup2 )
# prints
('Hello', (1, 2, 3), 45)

Доступ к элементам в кортеже

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

  • -1: указывает на последний элемент
  • -2: указывает на второй последний элемент и т. Д.
tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
print( tup1[0] )
print( tup1[5] )
print( tup1[-1] )
print( tup1[-9] )
# prints
M
S
F
M

Нарезка кортежа

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

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
# Prints elements from index 1(included) to index 6(excluded)
print( tup1[1:6] )
# Prints elements from start to index 8(excluded)
print( tup1[:8] )
# Prints elements from index 3(included) to the end
print( tup1[3:] )
# Prints elements from index -4(included) to index -1(excluded)
print( tup1[-4:-1] )
# prints
('A', 'K', 'E', 'U', 'S')
('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O')
('E', 'U', 'S', 'E', 'O', 'F')
('S', 'E', 'O')

Проверка наличия элемента в кортеже

Вы можете проверить, существует ли элемент в кортеже, используя в ключевое слово.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
if 'M' in tup1:
print('Yes, the element M exists in the tuple')
else:
print('Element not found in the tuple !!')

# prints
Yes, the element M exists in the tuple

Обновление кортежей

Поскольку кортежи неизменны, изменить их значение невозможно. Python выдает ошибку TypeError, если вы попытаетесь обновить кортеж.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
tup1[0] = 'Z'
# Following error is thrown
tup1[0] = 'Z'
TypeError: 'tuple' object does not support item assignment

Но есть хитрость, если вы хотите обновить кортеж.

Изменение значения элементов кортежа с помощью списков

Вы можете изменить значение элементов в своем кортеже, используя списки в Python . Сначала вам нужно преобразовать кортеж в список. Затем измените список по своему усмотрению. Наконец, преобразуйте список обратно в кортеж.

tup1 = ( 1, 2, 3 )
print( 'This is the old Tuple: ')
print( tup1 )
temp = list( tup1 )
temp[0] = 4
tup1 = tuple( temp )
print( 'This is the Updated Tuple: ')
print( tup1 )
# prints
This is the old Tuple:
(1, 2, 3)
This is the Updated Tuple:
(4, 2, 3)

Добавление новых элементов в кортеж с помощью списков

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

AttributeError: 'tuple' object has no attribute 'append

Опять же, вы можете использовать наш прием (использование списков), чтобы справиться с этим. Сначала преобразуйте кортеж в список. Затем добавьте в список новые элементы. Наконец, преобразуйте список в кортеж.

безопасно для кредитных карт

Примечание: Метод append () используется в Python чтобы добавить новый элемент в конец списка.

tup1 = ( 1, 2, 3 )
print( 'This is the old Tuple: ')
print( tup1 )
temp = list( tup1 )
temp.append(4)
tup1 = tuple( temp )
print( 'This is the Updated Tuple: ')
print( tup1 )
# prints
This is the old Tuple:
(1, 2, 3)
This is the Updated Tuple:
(1, 2, 3, 4)

Операция удаления кортежей

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

tup1 = ( 1, 2, 3 )
del tup1

Но вы можете использовать тот же прием (со списками), который вы использовали для изменения и добавления элементов кортежа.

Удаление элементов из кортежа с помощью списков

Элементы могут быть удалены из кортежа с помощью списков в 3 простых шага:

Шаг 1. Преобразуйте кортеж в список.

Шаг 2: Удалите элементы из списка, используя Удалить() метод

Шаг 3: преобразовать список в кортеж.

tup1 = ( 1, 2, 3 )
print( 'This is the old Tuple: ')
print( tup1 )
temp = list( tup1 )
temp.remove(1)
tup1 = tuple( temp )
print( 'This is the Updated Tuple: ')
print( tup1 )
# prints
This is the old Tuple:
(1, 2, 3)
This is the Updated Tuple:
(2, 3)

Упаковка и распаковка кортежей

При создании кортежа присваиваются значения. Это называется Упаковка кортежа .

# Example of packing a tuple
tup1 = ( 1, 2, 3)

В то время как извлечение значений обратно в переменные называется Распаковка кортежа .

снимки экрана блокировки Windows 10, где они были сделаны
# Example of unpacking a tuple
tup1 = ( 1, 2, 3 )
( one, two, three ) = tup1
print( one )
print( two )
print( three )
# prints
1
2
3

Цикл с кортежами Python

Кортежи - это повторяющиеся контейнеры, как и списки в Python. Вы можете легко перебирать элементы кортежа.

Использование for Loop

Цикл for Python работает путем перебора элементов контейнера.

# Looping using for loop
tup1 = ( 1, 2, 3 )
for element in tup1:
print( element )
# prints
1
2
3

Связанный: Как использовать циклы For в Python

Использование порядковых номеров

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

tup1 = ( 1, 2, 3 )
for index in range(len(tup1)):
print( tup1[index] )

# prints
1
2
3

Повышение эффективности вашего кода

Поскольку структура данных кортежа неизменна, ее скорость обработки выше чем списки. Таким образом, он обеспечивает оптимизацию программ / проектов Python. Использование этой мощной и универсальной структуры данных (кортежей) в ваших программах на Python поднимет эффективность вашего кода на новый уровень.

Делиться Делиться Твитнуть Эл. адрес Изучение Python? Вот как манипулировать строками

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

Читать далее
Похожие темы
  • Программирование
  • Python
Об авторе Юврадж Чандра(Опубликовано 60 статей)

Юврадж - студент бакалавриата по информатике в Университете Дели, Индия. Он увлечен веб-разработкой Full Stack. Когда он не пишет, он исследует глубину различных технологий.

Ещё от Yuvraj Chandra

Подписывайтесь на нашу новостную рассылку

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

Нажмите здесь, чтобы подписаться