==== Обратится по индексу ====
t1 = tuple('hello')
print(t1[1]) # e
====Кортеж занимает меньше памяти, одно из его преимуществ====
l1 = [1, 2, 3]
t1 = (1, 2, 3)
print(l1.__sizeof__()) # 32
print(t1.__sizeof__()) # 24
====Сложение кортежей====
t1 = tuple('Hello')
t2 = tuple(' world')
t3 = t1 + t2
print(t3)
====количество элементов кортежа====
t1 = tuple('Hello')
print(len(t1)) # 5
====Количество определенных символов====
t1 = tuple('Hello')
print(t1.count('l')) # 2
====Позиция символа в последовательности====
t1 = tuple('Hello')
print(t1.index('l')) # 2
t1 = tuple('Hello')
перебор последовательности
for i in t1:
print(f'"{i}"', end = ' ') #H e l l o
====Список внутри кортежа====
t1 = (1, 2, 3, ['Hello', ' wolrd'])
print(t1, id(t1)) #(1, 2, 3, ['Hello', ' wolrd']) 17320368
t1[3][0] = t1[3][0].upper()
print(t1, id(t1)) #(1, 2, 3, ['HELLO', ' wolrd']) 17320368
====Распаковка кортежа====
t1 = (1, 2, 3)
x, y, z = t1
print(x, y, z) #1 2 3
====Поменять местами значения переменных, c помощью кортежей====
x = 1
y = 2
print(x, y) #1 2
x, y = y, x
print(x, y) #2 1
====Пример====
Дан список words. Составьте из него список слов-палиндромов.
Попробуйте это сделать двумя способами: произвольное решение и решение в одну строчку кода.
Дан список my_str со строками, часть из которых являются палиндромами. Составьте новый список строк-палиндромов.
words = ['мадам', 'топот', 'test', 'madam', 'word']
words = [i for i in words if list(i) == list(reversed(i))]
print(words)
my_str = ['Око за око', 'А роза упала на лапу Азора', 'Около Миши молоко']
my_str= [i for i in my_str if list(i.lower().replace(' ', '')) == list(reversed(i.lower().replace(' ', '')))]
print(my_str)
==Вторым спсобом для переворачивания строк используем срез==
words = ['мадам', 'топот', 'test', 'madam', 'word']
words = [i for i in words if i == i[::-1]]
print(words)
my_str = ['Око за око', 'А роза упала на лапу Азора', 'Около Миши молоко']
my_str= [i for i in my_str if i.lower().replace(' ', '') == i.lower().replace(' ', '')[::-1]]
print(my_str)