Кортежът е един от четирите вградени типа данни в Python, използвани за съхраняване на колекции от данни. Операциите с кортежи са тези, които могат да се извършват върху елементите в структурата от данни на кортежа. Нека разгледаме някои от най-широко използваните кортежни операции в Python.
1. Преброяване на поява на елемент в кортеж
броя() методът се използва за преброяване на общите поява на елемент в кортежа. Ако елементът не е намерен в кортежа, тогава функцията връща 0.
tup1 = ( 1, 4, 7, 3, 6, 4, 1, 8, 4)
# отчита броя на случаите, когато 4 се появяват в кортежа
печат( tup1.count(4) )
# разпечатки
3
2. Намиране на позицията на елемент в кортеж
Можете да използвате индекс() метод за намиране на индекса/позицията на елемент в кортежа. Ако има повече от едно появяване на елемент в кортежа, тогава функцията връща индекса на първото появяване.
tup1 = ( 1, 4, 7, 3, 6, 4, 1, 8, 4)
печат( tup1.index(4) )
# разпечатки
1
Забележка:
Ако се опитате да намерите индекса на елемента, който не присъства в кортежа, тогава функцията хвърля ValueError като:
ValueError: tuple.index (x): x не е в кортеж
3. Как да се присъедините към две или повече кортежи
Можете да присъедините два или повече кортежи с помощта на + оператор.
tup1 = ( 1, 2, 3 )
tup2 = ( 4, 5, 6 )
tup3 = tup1 + tup2
печат( tup3 )
# разпечатки
(1, 2, 3, 4, 5, 6)
4. Как да конвертирате низ в кортеж
Можете да използвате кортеж() конструктор за преобразуване на низ в кортеж чрез предаване на низа като параметър на конструктора на tuple().
tup1 = кортеж ( "ДА СЕ ВЪЗПОЛЗВАТ ОТ" )
печат( tup1 )
# разпечатки
('М', 'А', 'К', 'Е', 'У', 'С', 'Е', 'О', 'Ф')
5. Как да конвертирате списък в кортеж
Можем да следваме три подхода за преобразуване на списък в кортеж.
Подход 1: Използване на tuple() конструктор
кортеж() конструкторът се използва за преобразуване на списък в кортеж чрез предаване на списъка като параметър на конструктора на tuple().
списък1 = [1, 2, 3, 4, 5, 6]
tup1 = кортеж (списък1)
печат(туп1)
# разпечатки
(1, 2, 3, 4, 5, 6)
Подход 2: Използване на конструктор на цикъл вътре в tuple().
Това е лека вариация на горния подход. Изпълняваме цикъл (използвайки разбиране на списъка) вътре в конструктора на tuple(), за да създадете кортежа.
списък1 = [ 1, 2, 3, 4, 5, 6 ]
tup1 = tuple (елемент за елемент в list1)
печат( tup1 )
# разпечатки
(1, 2, 3, 4, 5, 6)
Подход 3: Използване на (*listName,)
Това разопакова списък в кортежния литерал поради наличието на единична запетая (,). Този метод е най-бързият от трите подхода.
списък1 = [1, 2, 3, 4, 5, 6]
tup1 = (*списък1,)
печат(туп1)
# разпечатки
(1, 2, 3, 4, 5, 6)
6. Как да умножаваме кортежи
Можете да умножите съдържанието на кортежа произволен брой пъти, като използвате * оператор.
tup1 = ( 1, 2, 3 )
tup2 = tup1 * 3
печат( tup2 )
# разпечатки
(1, 2, 3, 1, 2, 3, 1, 2, 3)
7. Как да намерите общия брой елементи в кортеж
len() функцията е една от най-използваните вградени функции в Python. Използва се за намиране на общия брой елементи в обект. Можете да използвате функцията len() с кортеж, за да преброите общия брой елементи в кортежа.
tup1 = ( 1, 2, 3 )
печат( len ( tup1 ) )
# разпечатки
3
8. Как да намерите минимален елемент в кортеж
мин() функцията се използва за намиране на елемент с най-ниска стойност в дадения кортеж.
tup1 = ( 1, 2, 3 )
print("Минимален елемент в кортежът е: ")
печат( мин ( tup1 ) )
# разпечатки
Минимален елемент в кортежът е:
1
9. Как да намерите максимален елемент в кортеж
макс() функцията се използва за намиране на елемент с най-висока стойност в дадения кортеж.
tup1 = ( 1, 2, 3 )
print("Максимален елемент в кортежът е: ")
печат( макс ( tup1 ) )
# разпечатки
Максимален елемент в кортежът е:
3
10. Как да намерим сбора от всички елементи в кортеж
сума() функцията се използва за изчисляване на аритметичната сума на всички елементи в кортежа.
tup1 = ( 1, 2, 3 )
печат("Сума от елементи: ")
печат( сума ( tup1 ) )
# разпечатки
Сума от елементи:
6
11. any() операция върху кортежи
Ако един или повече елементи от кортежа имат булева стойност True, тогава всеки() функция се връща Вярно иначе се връща Невярно.
tup1 = ( Невярно, Невярно, Невярно, Вярно )
печат( произволно ( tup1 ) )
# разпечатки
Вярно
12. all() Операция върху кортежи
Можеш да използваш всичко() функция, за да провери дали всички елементи на кортежа имат булева стойност True. Дори ако някой елемент от кортежа има булева стойност False, тогава функцията връща False.
tup1 = ( Вярно, Вярно, Вярно, Невярно, Вярно )
печат(всички (tup1))
# разпечатки
Невярно
13. sorted() Операция върху кортежи
Можете да използвате сортиран() функция за връщане на сортиран списък във възходящ ред.
tup1 = ( 6, 1, 8, 3, 7, 2 )
печат( сортирано (tup1) )
печат( Тип(сортирани ( tup1 )) )
# разпечатки
[1, 2, 3, 6, 7, 8]
<клас 'списък'>
# Обърнете внимание, че типът на връщане е list
14. Как да разбъркате кортеж
Тъй като кортежите са неизменни, те не могат да се разбъркват директно. Трябва да използваме списъци, за да разбъркваме кортеж. Можем да разбъркваме кортеж с помощта на привеждане на типа в три стъпки:
Стъпка 1: Typecast кортеж към списък
Стъпка 2: Разбъркайте списъка
Стъпка 3: Typecast списък обратно към кортеж
внос произволен
old_tuple = ( 45, 46, 47, 48, 49 )
# Отпечатване на кортеж
печат("Стар кортеж:")
печат(стара_кортежа)
# Typecasting кортеж към списък
списък1 = списък(стара_кортежа)
# Разбъркване на списък
произволен.разбъркайте(списък1)
# Списък за привеждане на типа обратно към кортеж
new_tuple = кортеж (списък1)
# Отпечатване на нов разбъркан кортеж
печат("Нов разбъркан кортеж:")
печат(нов_кортеж)
# разпечатки
Стар кортеж:
(45, 46, 47, 48, 49)
Нов разбъркан кортеж:
(45, 49, 46, 47, 48)
Забележка: Тъй като кортежът се разбърква произволно, може да получите различен изход.
15. Как да конвертирате списък с кортежи в списък със списъци
Използвайки разбирането на списъка, можем да преобразуваме списък с кортежи в списък със списъци.
списък1 = [ ('А', 'Б'), ('° С', 'д'), ('Е', 'Ф') ]
печат("Списък от кортежи:")
печат(списък1)
# Разбиране на списъка
резултат = [ списък(елемент) за елемент в списък1]
печат("Списък от списъци:")
печат(резултат)
# разпечатки
Списък от кортежи:
[('А', 'Б'), ('° С', 'д'), ('Е', 'Ф')]
Списък от списъците:
[['А', 'Б'], ['° С', 'д'], ['Е', 'Ф']]
16. Как да конвертирате списък с кортежи в списък с низове
Използване на разбирането на списъка и присъединяване() метод можем да преобразуваме списък от кортежи в списък от низове.
списък1 = [ ('М', 'А', 'К', 'Е'), ('У', 'С', 'Е'), ('О', 'Ф') ]
печат("Списък от кортежи:")
печат(списък1)
# Разбиране на списък с метод join().
резултат = [ ''.join (елемент) за елемент в list1 ]
печат("Списък на низове:")
печат(резултат)
# разпечатки
Списък от кортежи:
[('М', 'А', 'К', 'Е'), ('У', 'С', 'Е'), ('О', 'Ф')]
Списък от низове:
['НАПРАВЕТЕ', 'ИЗПОЛЗВАЙТЕ', 'НА']
Свързани: Как да използвате цикли For в Python
17. Как да обърнете кортеж
Използвайки техниката на нарязване, можем да обърнем кортежа. По време на този процес се създава ново копие на кортежа.
стара_кортежа = ('М', 'А', 'К', 'Е', 'У', 'С', 'Е', 'О', 'Ф')
печат("Стар кортеж:")
печат(стара_кортежа)
# Обръщане на кортеж с помощта на нарязване
new_tuple = old_tuple[::-1]
печат("Нов кортеж:")
печат(нов_кортеж)
# разпечатки
Стар кортеж:
('М', 'А', 'К', 'Е', 'У', 'С', 'Е', 'О', 'Ф')
Нов кортеж:
('Ф', 'О', 'Е', 'С', 'У', 'Е', 'К', 'А', 'М')
Изучаване на Pythonic Way
Използвайки операции с кортежи в Python, можете да изпълнявате задача с минимални редове код. Бъдете креативни и проучете допълнително потенциала на кортежите, за да научите Python по по-pythonic начин.