Операция распаковки в Python. Как работает оператор астерикс, или проще говоря символ звёздочки *, если его поставить перед переменной? Напишем интересную инструкцию присваивания:
mass = (1, 2, 3, 4, 5)
a, *b, c = mass
print(a)
print(b)
print(c)
Интерпретатор распаковал кортеж, записал значение первого элемента кортежа в переменную a, значение последнего элемента в переменную c, а все остальные элементы собрал в список и присвоил переменной b. Такая операция называется распаковкой с присваиванием.
Если мы поставим оператор распаковки перед c и выведем результат в терминал, то увидим, что теперь первые два элемента присвоены переменным a и b, а все остальные в виде списка присвоены c.
mass = (1, 2, 3, 4, 5)
a, b, *c = mass
print(a)
print(b)
print(c)