Раздел «Язык Си».PythonTuple:

Кортежи (tuple)

Кортеж - это список, который нельзя изменить.

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

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

Пустой кортеж

t = ()

t1 = 1, 5, 7,     # (1, 5, 7)
t2 = (1, 5, 7,)   # (1, 5, 7)
t3 = 1, 5, 7      # (1, 5, 7)
t4 = (1, 5, 7)    # (1, 5, 7)

Из любого перечисляемого типа, например, из списка

a = [1, 5, 7]  # a список, а не кортеж
t = tuple(a)   # сделали из него кортеж (1, 5, 7)

Где я уже использовал кортежи раньше?

Когда печатал по формату

print("%s рост %d см" % ("Миша", 177))  # кортеж ("Миша", 177)

Когда функция возвращает несколько значений, возвращается кортеж.

def min2time(mm):
    h = (mm//60)%24
    m = mm % 60
    return h, m        # возвратили кортеж (h, m)

h0, m0 = min2time(135) # каждому элементу кортежа (h0, m0) присвоили нужный элемент кортежа (2, 15)

Методы

Все общие методы

операция результат
x in s элемент х в кортеже s
x not in s элемент х НЕ в кортеже s
s + t склеили s и t
s * n или n * s повторить n раз кортеж s
s[i] i-ый элемент, нумерация с 0
s[i:j] часть s от i (включая) до j (не включая)
s[i:j:k] часть s от i (включая) до j (не включая) с шагом k
len(s) длина s
min(s) наименьший элемент s
max(s) наибольший элемент s
s.index(x) номер первого вхождения х в s
s.count(x) сколько раз x входит в s

Каких методов нет?

Список можно изменять. Кортеж нельзя изменять.

Нет методов, которые могут изменять.

-- TatyanaDerbysheva - 20 Mar 2017