python tuple tutorial with hands examples
Дослідіть концепцію Tuple у Python та Tuple vs List у цьому посібнику з прикладами:
У Python ми маємо чотири типи даних колекції, як зазначено нижче:
- Список
- Встановити
- Словник
- Кортеж
У цьому підручнику ми детально розглянемо Tuple у Python та його різні операції. Не пропустіть прочитати наш Весь спектр підручників з Python .
У Python кортеж є структурою даних і схожий на масив, який використовується для зберігання кількох даних одночасно. Якщо у вас є досвід роботи з іншими мовами програмування, такими як Java, C, C ++ тощо, то ви будете знайомі з поняттям масивів, отже кортеж майже такий самий, як масиви.
Що ви дізнаєтесь:
- Що таке кортеж?
- Кортеж проти Списку
- Створення кортежу
- Доступ до значень у Tuple
- Негативне індексування
- Нарізка кортежу
- Зміна кортежу
- Перетворення списку в кортеж
- Перетворення кортежу в рядок
- Сортувати кортеж на Python
- Пакування та розпакування кортежу
- Названий Tuple
- Повернути кортеж
- Індекс кортежу вийшов за межі діапазону
- Видалення кортежу
- Основні операції кортежу
- Методи вбудованих кортежів
- Висновок
- Рекомендована література
Що таке кортеж?
Кортеж - це структура даних, яка використовується для одночасного зберігання кількох даних. Дані, що зберігаються в кортежі, неоднорідні, і це справді робить його найпотужнішою функцією кортежу в Python. Ми можемо зберігати декілька даних різних типів даних, таких як рядок, цілі числа та об'єкти, а також в одному наборі.
Кортеж незмінний у Python, тому дані не можна змінювати після їх призначення.
Дані, що зберігаються в кортежі, отримують доступ за допомогою їх індексу, оскільки індекс кортежу завжди починатиметься з Нуля. Кожен елемент має певне місце в кортежі, і всі ці дані отримують доступ за допомогою індексу.
Кортеж проти Списку
- Список у Python є змінним (значення можна змінювати), тоді як Tuple незмінний (значення не можна змінювати)
- У порівнянні зі структурою даних списку, кортеж надає менше можливостей у Python.
- Оскільки кортежі незмінні, це підвищує продуктивність, оскільки ітерація в кортежі відбувається швидше порівняно зі списком.
Створення кортежу
Дані в кортежі зберігаються з розділеними комами і вкладаються в дужки (). Кортежі можуть містити будь-яку кількість предметів різного типу.
Синтаксис:
Tuple = (item1, item2, item3)
Приклад: 1
Tuple = ()
Приклад: 2
Tuple = (2, 4, 5.6)
Приклад: 3
Tuple = (2, 5, 4.5, “Hi”)
Приклад: 4
Tuple = (“Hi”, “Hello”, “Python”)
Якщо ми спостерігаємо наведені вище приклади, ми зберігаємо елементи різних типів даних із розділеними комами, де 2 та 5 мають тип Integer, 4.5 - типу float, а «Hi» - типу String. Ми також можемо оголосити порожній кортеж.
як використовувати команду cut в
Ми також можемо оголосити список або кортеж усередині кортежу, і це називається вкладеним кортежем.
Приклад: 5
Tuple = (“Python”, (2, 4, 6), (4, 5.6, “Hi”)) print(“Contents of tuple is:”, Tuple)
Вихід:
Зміст кортежу: («Python», (2, 4, 6), (4, 5.6, «Hi»))
Якщо ви спостерігаєте наведений вище приклад, ми оголосили список і кортеж всередині іншого кортежу.
Якщо кортеж містить лише один елемент, то він не вважається кортежем. Це повинна бути кінцева кома, щоб вказати інтерпретатору, що це кортеж.
Подивимось, у наведеному нижче прикладі
Приклад: 6
my_tuple = (“Python”) Print(“Type of my_tuple is:”, type(my_tuple)) my_tuple = (10) Print(“Type of my_tuple is:”, type(my_tuple)) my_tuple = (“Python”, ) Print(“Type of my_tuple is:”, type(my_tuple))
Вихід:
Тип my_tuple:
Тип my_tuple:
Тип my_tuple:
Доступ до значень у Tuple
Існує декілька способів отримати доступ до елементів, що знаходяться всередині кортежу в Python. За допомогою індексу ми можемо отримати доступ до елементів кортежу. Індекс починається з 0, і індекс завжди повинен бути цілим числом. Якщо ми використовуємо індекс, відмінний від цілого, як float, то це призведе до TypeError.
Приклад: 1
Tuple = (3, 5, 6.7, “Python”) print(“Tuple is:”, Tuple)
Вихід:
Кортеж: (3. 5. 6.7, “Python”)
У наведеному вище прикладі ми безпосередньо надрукували кортеж за допомогою функції друку, і ми не отримуємо доступ до окремих елементів кортежу.
Давайте перейдемо до окремих елементів кортежу.
Приклад: 2
Tuple = (3, 5, 6.7, “Python”) print(“Third element of the Tuple is:”, Tuple(2))
Вихід:
Третім елементом Кортежу є: 6.7
Приклад: 3
Tuple = (3, 5, 6.7, “Python”) print(“First element of the Tuple is:”, Tuple(0)) print(“Last element of the Tuple is:”, Tuple(3))
Вихід:
Перший елемент Кортежу: 3
Останнім елементом Кортежу є: «Python»
Ми також можемо отримати доступ до елементів, присутніх у вкладеному кортежі, за допомогою вкладеного індексування.
Приклад: 4
Tuple = (“Python”, (2, 4, 6), (4, 5.6, “Hi”)) print(“First element of the tuple is:”, Tuple(0)(1)) print(“Items present inside another list or tuple is:”, Tuple(2)(1))
Вихід:
Перший елемент кортежу: 'y'
Елементи, присутні в іншому списку або кортежі: 5.6
Як обговорювалося в Підручник зі списку Python значення всередині вкладеного списку зберігаються у вигляді матриці, аналогічно, Tuple також дотримується тієї ж концепції.
П і т о н
2 4 6
4 5.6 Привіт
Отже, коли ми намагаємося отримати доступ до Tuple (0) (1), тоді він буде вказувати на 1вулряд і 2йстовпець, тому дані будуть 'y'.
Подібним чином, коли ми намагаємось отримати доступ до Списку (2) (1), він вказуватиме на 3рдряд і 2йстовпець так, дані будуть 5.6
Примітка:Вищевказана концепція працює лише при спробі отримати доступ до елементів кортежу за допомогою вкладеного індексування.
Негативне індексування
Ми також можемо отримати доступ до даних за допомогою негативного індексу. Від’ємний індекс завжди починатиметься з -1, а -1 стосується останнього елемента, а -2 - до останнього другого елемента, а отже, і далі.
Завжди пам’ятайте, що Позитивне індексування використовується для ітерації елементів кортежу вперед, тоді як негативне індексування йде назад.
Приклад: 1
Tuple = (3, 5, 7.8) print(“Last element of the tuple is:”, Tuple(-1))
Вихід:
Останній елемент кортежу: 7.8
Приклад: 2
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple(-3))
Вихід:
Перший елемент кортежу: 3
Нарізка кортежу
Використовуючи оператор зрізу (:), ми можемо отримати доступ до ряду елементів із кортежу.
Приклад: 1
Tuple = (1, 2.5, 3, 4.9, 5, 6, “Python”) print(“Elements from 2nd to 5th is: ”, Tuple(1:5)) print(“Elements beginning to 4th is: ”, Tuple(:-3)) print(“Elements 4th to end is: ”, Tuple(3:)) print(“Elements from start to end is: “, Tuple(:))
Вихід:
Елементи з 2 по 5: (2,5, 3, 4,9, 5)
Елементи, що починаються з 4-го, це: (1, 2,5, 3, 4,9)
Елементи від 4 до кінця: (4.9, 5, 6, «Python»)
Елементи від початку до кінця: (1, 2,5, 3, 4,9, 5, 6, 'Python')
Ми також можемо отримати доступ до елементів, присутніх у кортежі, використовуючи цикл for.
Приклад: 2
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple(-3))
Вихід:
1
два
3.5
5
'Привіт'
Зміна кортежу
Як ми знаємо, кортежі незмінні в Python, отже, дані не можна змінювати, але списки можна змінювати. Таким чином, списки, наявні всередині кортежів (вкладених кортежів), можуть бути змінені.
Приклад: 1
Tuple = (3, 4.5, (4, 5, 6)) print(“Original Tuple is:”, Tuple) Tuple(2)(0) = 2 print(“Updated Tuple is:”, Tuple)
Вихід:
Оригінальний кортеж: (3, 4,5, (4, 5, 6))
Оновлений кортеж: (3, 4,5, (2, 5, 6))
Ми не можемо використовувати функцію append () або extension () у Tuple, оскільки кортежі незмінні. Крім того, ви також не можете використовувати функцію remove () або pop ().
Перетворення списку в кортеж
Ми можемо перетворити список у Tuple за допомогою вбудованої в Python функції, що називається tuple ().
Синтаксис:
tuple(arg1)
Функція Tuple () приймає один аргумент, і аргументом повинно бути ім'я змінної списку.
Приклад: 1
List = (2, 4, 5.6, “Hi”) print(“Original List is:”, List) Tuple = tuple(List) print(“After converting to tuple is:”, Tuple)
Вихід:
Оригінальний список: (2, 4, 5.6, „Привіт“)
Після перетворення в кортеж є: (2, 4, 5.6, 'Привіт')
Перетворення кортежу в рядок
Ми також можемо перетворити Tuple в String двома способами.
Підхід: 1
Використовуючи вбудований метод join () із String, ми можемо перетворити Tuple в String.
Приклад: 1
def convertTupleToString(my_tuple): s = ‘’.join(my_tuple) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Вихід:
Перед перетворенням на String: („P“, „y“, „t“, „h“, „o“, „n“)
Після перетворення в String: «Python»
Підхід: 2
Метод reduce () із functools використовується для перетворення Tuple у String. Цей метод об'єднує символ, присутній у кортежі, і створює рядок.
Приклад: 2
import operator import functools def convertTupleToString(my_tuple): s = functools.reduce(operator.add, (my_tuple)) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Вихід:
Перед перетворенням на String: („P“, „y“, „t“, „h“, „o“, „n“)
Після перетворення в String: «Python»
Примітка: Ви можете перетворити Tuple в String, лише якщо Tuple містить символи. Якщо кортеж містить будь-який елемент цілого чи плаваючого типу, він видасть помилку.
Приклад: 3
def convertTupleToString(my_tuple): s = ‘’.join(my_tuple) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’, 4, 6.5) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Вихід:
Запитання та відповіді на інтерв’ю для plsql для досвідчених
Перед перетворенням у String: („P“, „y“, „t“, „h“, „o“, „n“, 4, 6.5)
Відстеження (останній останній дзвінок):
Файл “”, рядок 1, дюйм
str = ”.join (Кортеж)
TypeError: елемент послідовності 6: очікуваний екземпляр str, int знайдено
Сортувати кортеж на Python
У python ми маємо вбудовану функцію, яка називається sorted () для сортування елементів кортежу.
Синтаксис:
sorted(arg1)
Метод sorted () приймає один аргумент, який є іменем змінної.
Приклад: 1
def sortTuple(my_tuple): sort = sorted(my_tuple) return sort Tuple = (2, 4, 6, 1, 4, 7.8, 2.7) print(“Before sorting the Tuple is:”, Tuple) sortedTuple = sortTuple(Tuple) print(“After sorting the Tuple is:”, sortedTuple)
Вихід:
Перед сортуванням Кортеж: (2, 4, 6, 1, 4, 7.8, 2.7)
Після сортування Кортеж: (1, 2, 2.7, 4, 4, 6, 7.8)
Пакування та розпакування кортежу
Python надає важливу функцію, яка називається упаковка та розпакування. Під час упаковки ми поміщаємо значення в кортеж, але, розпаковуючи, ми витягуємо всі ці значення, що зберігаються в кортежах, у змінні.
Приклад: 1
Tuple = (“John”, 23567, “Software Engineer”) (eName, eID, eTitle) = Tuple print(“Packed tuples is:”, Tuple) print(“Employee name is:”, eName) print(“Employee ID is:”, eID) print(“Employee Title is:”, eTitle)
Вихід:
Упаковані кортежі: (“Джон”, 23567, “Інженер-програміст”)
Ім'я працівника: Джон
Ідентифікатор працівника: 23567
Назва працівника: Інженер-програміст
Якщо ви помітили у наведеному вище випадку в рядку номер 2, ми розпаковуємо кортеж за деякими змінними.
Примітка: Кількість елементів у кортежі повинна дорівнювати кількості змінних у нерозпакованому кортежі.
Названий Tuple
Python надає спеціальний тип функції з назвою namedtuple (), що надходить із модуля збору.
Іменовані кортежі схожі на словник, що містить ключі та значення. Але різниця полягає в тому, що у словнику ми можемо отримати доступ до значення лише за допомогою ключа, але NamedTuple підтримує доступ як від значення, так і від ключа.
Є три способи, за допомогою яких ми можемо отримати доступ до значень nemaedtuple ().
- Доступ за індексом
- Доступ за ключем
- Доступ методом getattr ()
Приклад: 1
import collections Employee = collections.namedtuple(‘Employee’, (‘name’, ‘ID’, ‘Title’)) Emp = Employee(‘John’, ‘23567’, ‘Software Engineer’) #Accessing using index print(“Employee name is:”, Emp(0)) # Accessing using key print(“Employee ID is:”, Emp.ID) #Access by getattr() method print(“Employee Title is:”, getattr(Emp, ‘Title’))
Вихід:
Ім'я працівника: Джон
Ідентифікатор працівника: 23567
Назва працівника: Інженер-програміст
У нас також є три операції перетворення, які підтримуються для функції namedtuples ().
- _make ()
- _asdict ()
- ** Оператор (подвійний старт)
Приклад: 2
import collections Employee = collections.namedtuple(‘Employee’, (‘name’, ‘ID’, ‘Title’)) Emp = Employee(‘John’, ‘23567’, ‘Software Engineer’) Emp1 = (‘Mathew’, ‘45783’, “Software Developer”) Emp2 = {‘name’ : “Helen”, ‘ID’ : 56873, ‘Title’ : “Test Lead”} #Using _make() print(Employee._make(Emp1)) #Using _asdict() print(Emp._asdict()) #Using ** operator print(Employee(**Emp2))
Вихід:
Співробітник (name = ‘Mathew’, ID = ’45783 ′, Title =‘ Developer Software ’)
OrderedDict (((«ім’я», «Джон»), («ID», «23567»), («Назва», «Інженер-програміст»)))
Співробітник (name = ‘Helen’, ID = 56873, Title = ‘Test Lead’)
Повернути кортеж
Ми можемо повернути колекцію значень або кортежів за допомогою оператора return.
Приклад: 1
def my_fun(): name = “John” ID = 23567 Title = “Software Engineer” return (name, ID, Title) employee = my_fun() print(“Employee detail is:”, employee)
Вихід:
Деталі працівника: («Джон», 23567, «Інженер-програміст»)
Індекс кортежу вийшов за межі діапазону
Індекс поза діапазоном є одним із найпоширеніших винятків, які ми отримаємо під час роботи з Tuples або list. Цей виняток зазвичай трапляється під час спроби отримати доступ до елемента поза кортежем, діапазоном, що означає, що кортежі містять лише 3 елементи, і якщо ви намагаєтесь отримати доступ до 4гоелементом, тоді він виведе індекс кортежу поза винятком діапазону.
Приклад: 1
Tuple = (4, 7, 1.2, “Hi”) print(Tuple(4))
Вихід:
Відстеження (останній останній дзвінок):
Файл “”, рядок 1, дюйм
Кортеж (4)
IndexError: індекс кортежу вийшов за межі діапазону
Якщо ви спостерігаєте у наведеному вище прикладі, ми намагаємось отримати доступ до елемента, який присутній на 5гоposition, але там немає елемента, тому він викидає індекс кортежу поза винятком діапазону.
Видалення кортежу
Ми не можемо видалити окремі елементи з кортежу, оскільки кортежі незмінні. Єдиний спосіб видалити елементи з кортежу - це видалити весь кортеж.
Python надає вбудовану функцію 'del' для видалення цілого кортежу.
Приклад: 1
Tuple = (2, 4.5, “Python”) print(“Before deleting the tuple:”, Tuple) del Tuple print(“After Deleting the tuple:”, Tuple)
Вихід:
Перед видаленням кортежу: (2, 4.5, “Python”)
Відстеження (останній останній дзвінок):
Файл “”, рядок 1, дюйм
print (“Після видалення кортежу:”, Tuple)
NameError: ім'я 'Tuple' не визначено
У наведеному вище прикладі після видалення кортежу ми намагаємось надрукувати Кортеж, але він уже не існує. Звідси викидає NameError.
Основні операції кортежу
Використовуючи кортежі, ми можемо виконувати деякі основні операції, такі як конкатенація, повторення тощо.
Давайте розглянемо всі основні операції на кількох прикладах.
Приклад: 1 - Конкатенація кортежів
Ми можемо об’єднати кортежі за допомогою оператора ‘+’.
Tuple1 = (3, 5, “Hi”) Tuple2 = (5.6, 1, “Python”) print(“Tuple 1 is:”, Tuple1) print(“Tuple 2 is”, Tuple2) print(“Concatenation of Tuple 1 and Tuple 2 is:”, Tuple1+Tuple2)
Вихід:
Кортеж 1: (3, 5, 'Привіт')
Кортеж 2: (5.6, 1, “Python”)
Конкатенація Tuple 1 і Tuple 2: (3, 5, 'Привіт', 5.6, 1, 'Python')
Приклад: 2 - Повторення кортежу
Повторення кортежів означає повторення елементів кортежів кілька разів. Цього можна досягти за допомогою оператора ‘*’.
Tuple = (3, 1, 5.6, “Python”) print(“Before the repetition the tuple is:”, Tuple) print(“After the repetition the tuple is:”, Tuple*3)
Вихід:
ba питання та відповіді на співбесіду pdf
Перед повторенням кортеж: (3, 1, 5.6, “Python”)
Після повторення кортеж: (3, 1, 5.6, “Python”, 3, 1, 5.6, “Python”, 3, 1, 5.6, “Python”)
Приклад: 3 - Оператор членства
За допомогою оператора ‘in’ ми можемо перевірити, чи присутній певний елемент у Tuple. Він повертає булеве значення True, якщо елемент присутній у кортежі, і повертає False, якщо елемент відсутній.
Tuple = (3, 2, 6) print(“Is element 2 present in Tuple:”, 2 in Tuple)
Вихід:
Чи присутній елемент 2 у Tuple: True
Методи вбудованих кортежів
Python пропонує кілька вбудованих методів для кортежів, як описано в таблиці нижче.
Методи | Опис |
---|---|
будь-який () | Повертає True, якщо якийсь елемент присутній у кортежі, і повертає False, якщо кортеж порожній |
хв () | Повертає найменший елемент (ціле число) кортежу |
макс. () | Повертає найбільший елемент (ціле число) кортежу |
len () | Повертає довжину кортежу |
відсортовано () | Використовується для сортування всіх елементів Кортежу |
сума () | Повертає суму всіх елементів (цілих чисел) кортежів |
Давайте подивимося, як використовувати всі методи на прикладі.
Приклад: 1 - будь-який () метод
Tuple = (3, 1, 4.5) print(“Is there any elements present in Tuple:”, any(Tuple)) Tuple1 = () print(“Is there any elements present in Tuple1:”, any(Tuple1))
Вихід:
Чи є в Tuple елементи: True
Чи є в Tuple1: False якісь елементи
Приклад: метод 2 - хв ()
Tuple = (3, 5.6, 5, 8) print(“Smallest element in the tuples is:”, min(Tuple))
Вихід:
Найменший елемент кортежів: 3
Приклад: метод 3 - max ()
Tuple = (3, 5.6, 5, 8) print(“Largest element in the tuples is:”, max(Tuple))
Вихід:
Найбільший елемент кортежів: 8
Приклад: метод 4 - len ()
Tuple = (3, 5.6, 5, 8) print(“Length of the tuple is:”, len(Tuple))
Вихід:
Довжина кортежу: 4
Приклад: 5 - метод сортування ()
Tuple = (2, 3.5, 1, 6, 4) print(“Sorted integer is:”, sorted(Tuple)) Tuple1 = (‘e’, ‘a’, ‘u’, ‘o’, ‘i’) print(“Sorted character is:”, sorted(Tuple1))
Вихід:
Відсортоване ціле число: (1, 2, 3,5, 4, 6)
Відсортований символ: ('a', 'e', 'i', 'o', 'u')
Приклад: метод 6 - sum ()
Num = (3, 5.1, 2, 9, 3.5) print('Sum of all the numbers in the tuples is:', sum(Num))
Вихід:
Сума всіх чисел у кортежах становить: 22,6
Висновок
Кортеж - це один із типів даних у Python, який також називають структурою даних.
Корпус Python використовується для зберігання великої кількості значень будь-яких типів даних в одній змінній. Кортежі незмінні, отже це підвищує ефективність доступу до значень із кортежу.
Коли ви працюєте з кортежами, обов’язково пам’ятайте всі вбудовані методи.
Сподіваюся, ви отримали величезні знання щодо концепції Tuple у Python !!
Рекомендована література
- Підручник з Python DateTime із прикладами
- Підручник з Python для початківців (практичне БЕЗКОШТОВНЕ навчання з Python)
- Підручник з основних функцій Python з практичними прикладами
- Поглиблені підручники Eclipse для початківців
- Функції рядка Python
- Підручник з розділення рядків Python
- Підручник JAVA для початківців: 100+ практичних навчальних посібників Java
- Змінні Python