Немного поговорим о распаковке, звездочке *, позиционных и keyword аргументах, спецсимволах, а также о том как все это применять для args и kwargs
1) args и kwargs в параметрах функции - общепринятые имена, но можно использовать и другие
2) *позволяет распаковать iterable/sequence, а *** распакуют словарь
3) если нет никаких спецсимволов, то аргументы функции можно передавать как позиционно, так и keyword (то есть ключ=значение). Важно помнить, что позиционные всегда идут раньше keyword, при этом keyword аргументы между собой не обязаны хранить порядок.
4) спецсимвол / в параметрах функции говорит, что все, что ДО него должно передаваться как позиционные аргументы
5) спецсимвол * (без указания переменной), говорит о том что все, что ПОСЛЕ него должно передаваться как keyword аргумент
6) *args в параметрах функции соберет все позиционные аргументы в кортеж (tuple)
7) **kwargs в параметрах функции соберет все keyword аргументы в словарь (dict)
Почитать:
Важно понабирать эти примеры, поэкспериментировать, понять для себя роль * и **
Присоединяйтесь к помощи каналу, будет интересно)
✔️Бусти
Будь первым везде и всегда, включай уведомления о новых выпусках 🔔
#Python #PythonRussian #PyCharm #arguments #args #kwargs
1 view
2148
645
1 month ago 01:31:41 1
ВАДИМ САМОЙЛОВ о судьбе «Агаты Кристи», культуре протеста, патриотизме и поиске истины