logo

Кортежі в Python

Python Tuple — це набір об’єктів, розділених комами. У певному сенсі кортеж схожий на список Python з точки зору індексування, вкладених об’єктів і повторення, але основна відмінність між ними полягає в тому, що кортеж Python є незмінним, на відміну від списку Python, який є змінним.

Створення кортежів Python

Існують різні способи створення кортежу Python . Вони такі:



  • Використання круглих дужок
  • З одним предметом
  • Конструктор кортежів

Створення кортежів за допомогою круглих дужок ()

Для створення кортежу ми будемо використовувати оператори ().

Python3








var>=> (>'Geeks'>,>'for'>,>'Geeks'>)> print>(var)>

>

>

Вихід:

('Geeks', 'for', 'Geeks')>

Створіть кортеж з одним елементом

Python 3.11 надає нам інший спосіб створення кортежу.

Python3




values :>tuple>[>int> |>str>, ...]>=> (>1>,>2>,>4>,>'Geek'>)> print>(values)>

>

>

Вихід:

Тут, у наведеному вище фрагменті, ми розглядаємо змінну під назвою values, яка містить кортеж, що складається з int або str, «…» означає, що кортеж буде містити більше одного int або str.

(1, 2, 4, 'Geek')>

Примітка: Якщо ви створюєте кортеж з одним елементом, обов’язково додайте кому після елемента. Давайте подивимося на приклад того самого.

Python3




mytuple>=> (>'Geeks'>,)> print>(>type>(mytuple))> #NOT a tuple> mytuple>=> (>'Geeks'>)> print>(>type>(mytuple))>

>

>

Вихід:

>

Конструктор кортежів у Python

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

Python3




tuple_constructor>=> tuple>((>'dsa'>,>'developement'>,>'deep learning'>))> print>(tuple_constructor)>

>

>

Вихід:

('dsa', 'developement', 'deep learning')>

Що є незмінним у кортежах?

Кортежі в Python схожі на Списки Python але не повністю. Кортежі є незмінними та впорядкованими та допускають повторювані значення. Деякі характеристики кортежів у Python.

  • Ми можемо знайти елементи в кортежі, оскільки пошук будь-якого елемента не вносить змін у кортеж.
  • Не можна додавати елементи до кортежу після його створення.
  • Кортежі не можна додавати або розширювати.
  • Ми не можемо видалити елементи з кортежу після його створення.

Побачимо це на прикладі.

Python3




mytuple>=> (>1>,>2>,>3>,>4>,>5>)> # tuples are indexed> print>(mytuple[>1>])> print>(mytuple[>4>])> # tuples contain duplicate elements> mytuple>=> (>1>,>2>,>3>,>4>,>2>,>3>)> print>(mytuple)> # adding an element> mytuple[>1>]>=> 100> print>(mytuple)>

>

>

Вихід:

Кортежі Python упорядковані, і ми можемо отримати доступ до їхніх елементів, використовуючи значення їх індексів. Вони також є незмінними, тобто ми не можемо додавати, видаляти та змінювати елементи, колись оголошені в кортежі, тому коли ми намагалися додати елемент з індексом 1, це породжувало помилку.

2 5 (1, 2, 3, 4, 2, 3) Traceback (most recent call last): File 'e0eaddff843a8695575daec34506f126.py', line 11, in tuple1[1] = 100 TypeError: 'tuple' object does not support item assignment>

Доступ до значень у кортежах Python

Кортежі в Python пропонують два способи доступу до елементів кортежу.

  • Використання позитивного індексу
  • Використання негативного індексу

Python Access Tuple з використанням позитивного індексу

Використовуючи квадратні дужки, ми можемо отримати значення з кортежів у Python.

Python3




var>=> (>'Geeks'>,>'for'>,>'Geeks'>)> print>(>'Value in Var[0] = '>, var[>0>])> print>(>'Value in Var[1] = '>, var[>1>])> print>(>'Value in Var[2] = '>, var[>2>])>

>

кількість нулів

>

Вихід:

Value in Var[0] = Geeks Value in Var[1] = for Value in Var[2] = Geeks>

Доступ до кортежу за допомогою негативного індексу

У наведених вище методах ми використовуємо позитивний індекс для доступу до значення в Python, а тут ми будемо використовувати негативний індекс у [].

Python3




var>=> (>1>,>2>,>3>)> print>(>'Value in Var[-1] = '>, var[>->1>])> print>(>'Value in Var[-2] = '>, var[>->2>])> print>(>'Value in Var[-3] = '>, var[>->3>])>

>

>

Вихід:

Value in Var[-1] = 3 Value in Var[-2] = 2 Value in Var[-3] = 1>

Різні операції, пов’язані з кортежами

Нижче наведено різні операції, пов’язані з кортежами в Python:

  • Конкатенація
  • Гніздування
  • Повторення
  • Нарізка
  • Видалення
  • Знаходження довжини
  • Кілька типів даних із кортежами
  • Перетворення списків у кортежі
  • Кортежі в циклі

Конкатенація кортежів Python

до Конкатенація кортежів Python, ми будемо використовувати оператори плюс (+).

Python3




# Code for concatenating 2 tuples> tuple1>=> (>0>,>1>,>2>,>3>)> tuple2>=> (>'python'>,>'geek'>)> # Concatenating above two> print>(tuple1>+> tuple2)>

>

>

Вихід:

(0, 1, 2, 3, 'python', 'geek')>

Вкладення кортежів Python

Вкладений кортеж у Python означає кортеж всередині іншого кортежу.

Python3




# Code for creating nested tuples> tuple1>=> (>0>,>1>,>2>,>3>)> tuple2>=> (>'python'>,>'geek'>)> tuple3>=> (tuple1, tuple2)> print>(tuple3)>

>

>

Вихід:

((0, 1, 2, 3), ('python', 'geek'))>

Повторення кортежів Python

Ми можемо створити кортеж з кількох однакових елементів з одного елемента цього кортежу.

Python3




# Code to create a tuple with repetition> tuple3>=> (>'python'>,)>*>3> print>(tuple3)>

>

>

Вихід:

('python', 'python', 'python')>

Спробуйте наведене вище без коми та перевірте. Ви отримаєте tuple3 як рядок «pythonpythonpython».

Нарізка кортежів у Python

Розрізання кортежу Python означає поділ кортежу на маленькі кортежі за допомогою методу індексування.

Python3




# code to test slicing> tuple1>=> (>0> ,>1>,>2>,>3>)> print>(tuple1[>1>:])> print>(tuple1[::>->1>])> print>(tuple1[>2>:>4>])>

>

>

Вихід:

У цьому прикладі ми розділили кортеж від індексу 1 до останнього елемента. У другому операторі друку ми надрукували кортеж за допомогою зворотного індексування. А в третьому операторі друку ми надрукували елементи з індексу 2 по 4.

налаштований виняток у java
(1, 2, 3) (3, 2, 1, 0) (2, 3)>

Примітка: У нарізці Python наданий кінцевий індекс не включається.

Видалення кортежу в Python

У цьому прикладі ми видаляємо кортеж за допомогою « del' ключове слово . Вихід буде у вигляді помилки, оскільки після видалення кортежу він видасть NameError.

Примітка: Видалити окремі елементи кортежу неможливо, але ми можемо видалити весь кортеж за допомогою ключового слова Del.

Python3




# Code for deleting a tuple> tuple3>=> (>0>,>1>)> del> tuple3> print>(tuple3)>

>

>

Вихід:

Traceback (most recent call last): File 'd92694727db1dc9118a5250bf04dafbd.py', line 6, in print(tuple3) NameError: name 'tuple3' is not defined>

Пошук довжини кортежу Python

Щоб знайти довжину кортежу, ми можемо використати функцію len() Python і передати кортеж як параметр.

Python3




# Code for printing the length of a tuple> tuple2>=> (>'python'>,>'geek'>)> print>(>len>(tuple2))>

>

>

Вихід:

 2>

Кілька типів даних із кортежем

Кортежі в Python неоднорідні за своєю природою. Це означає, що кортежі підтримують елементи з кількома типами даних.

Python3




# tuple with different datatypes> tuple_obj>=> (>'immutable'>,>True>,>23>)> print>(tuple_obj)>

>

>

Вихід:

('immutable', True, 23)>

Перетворення списку в кортеж

Ми можемо перетворити a список у Python до кортежу за допомогою конструктора tuple() і передання списку як його параметрів.

Python3




# Code for converting a list and a string into a tuple> list1>=> [>0>,>1>,>2>]> print>(>tuple>(list1))> # string 'python'> print>(>tuple>(>'python'>))>

>

>

Вихід:

Кортежі приймають один параметр, який може бути списком, рядком, набором або навіть словником (лише ключі беруться як елементи), і перетворюють їх на кортеж.

(0, 1, 2) ('p', 'y', 't', 'h', 'o', 'n')>

Кортежі в циклі

Ми також можемо створити кортеж з одним елементом у ньому, використовуючи петлі .

Python3




# python code for creating tuples in a loop> tup>=> (>'geek'>,)> # Number of time loop runs> n>=> 5> for> i>in> range>(>int>(n)):> >tup>=> (tup,)> >print>(tup)>

>

>

Вихід:

(('geek',),) ((('geek',),),) (((('geek',),),),) ((((('geek',),),),),) (((((('geek',),),),),),)>