342 читали · 1 год назад
Загадочные звездочки: Что значит * и ** в параметрах функций на Python
В языке программирования Python символы * и ** используются в параметрах функций для работы с переменным числом аргументов. Эти символы позволяют передавать функции произвольное количество значений без явного указания их количества. В Python символ * перед именем параметра позволяет принимать произвольное количество позиционных аргументов. При вызове функции все аргументы, которые не соответствуют другим параметрам, собираются в кортеж и присваиваются параметру с символом *. Рассмотрим следующий пример: В данном примере функция print_names принимает произвольное количество аргументов...
2 месяца назад
🔥 / и * в Python: Турникеты для ваших аргументов
🔥 / и * в Python: Турникеты для ваших аргументов В Python есть два магических символа, которые делают ваши функции неуязвимыми: `/` и `*` в определении аргументов. Слеш `/` — это ваш телохранитель для позиционных аргументов. Всё, что стоит до него, можно передавать ТОЛЬКО по порядку. Попробует кто-то подсунуть имя параметра — получит TypeError! def rocket_launch(code, /, key="0000"): print(f"🚀 Запуск по коду {code}!") Такой вызов сломается: rocket_launch(code="777") # ❌ БА-БАХ! Практика: Защищаете API от дураков? Ставьте / — и никто не перепутает порядок аргументов. Звёздочка `*` — это VIP-пропуск для именованных параметров...