Код Middle Функции и области видимости обновлено
Вызов с *args и **kwargs: разбор сигнатуры
Условие
Напишите split_args(args): на вход список токенов вызова вида ["1", "2", "x=3", "y=4"]. Верните [позиционные, именованные]: позиционные как список строк, именованные как словарь. Если позиционный аргумент встречается после именованного, верните строку "SyntaxError". Если имя повторяется, верните "TypeError".
Примеры
split_args(["1", "2", "x=3", "y=4"]) // [["1", "2"], {"x":"3","y":"4"}]
split_args([]) // [[], {}]
split_args(["x=1", "2"]) // "SyntaxError"
Как подойти
Подсказки: 1
- Именованный токен содержит
=; режьте один раз.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.
Термины по теме
Ещё по теме «Функции и области видимости»
- Что такое *args и **kwargs
- Перекрытие встроенных имён
- Как передаются аргументы в функцию Python
- Мемоизация через замыкание
- Повтор вызова с ограничением попыток
- Когда вычисляется значение по умолчанию
- Где хранятся значения по умолчанию
- Сигнатура с / и *