Распаковка
Синтаксис Python позволяет нам передавать все элементы из последовательности в виде отдельных позиционных аргументов функции с помощью (*). Эта звездочка называется астериском. Давайте вызовем функцию print() и посмотрим, как это работает.
Этот код будет эквивалентен вызову print("h", "e", "l", "l", "o") и print(1, 2, 3, 4) соответственно. Согласитесь, что такая распаковка занимает меньше времени?
Теперь приведу пример использования астериска поинтереснее. Допустим, вы хотите вывести день, месяц, год вашего рождения, а эти данные находятся в списке. И тут нам на помощь приходит звездочка!
Этот прием также прекрасно работает и со словарями:
Запаковка
Бывают на практике такие случаи, когда мы не знаем, сколько аргументов будет передано функции Python, мы можем использовать прием запаковки для того, чтобы упаковать все аргументы в кортеж.
Всё, что было передано в качестве аргументов упаковалось в кортеж и дальше мы можем использовать его в наших целях. Ну а поскольку кортеж неизменяем, мы можем преобразовать кортеж в список, чтобы также изменять, удалять и производить другие манипуляции над ним.
А на этом всё. Спасибо за внимание! Если вам понравилась статья, то ставьте лайки, делитесь с друзьями. Остались вопросы или замечания? Буду рад видеть ваши комментарии.
Вам может быть интересно:
Проверка обектов на идентичность в Python
__new__ против __init__ в Python
Коротко о том, что такое "магические" методы в Python?
История о том, как я искал свою первую работу программистом