(пожалуйста, помогите мне уточнить название)
Это то, что я хотел бы сделать:
s = "'arg1', 'arg2', foo='bar', baz='qux'"
def m(*args, **kwargs):
return args, kwargs
args, kwargs = m(magic(s))
# args = ['arg1', 'arg2']
# kwargs = {'foo': 'bar', 'baz'='qux'}
Каково определение магии ()?
Анализ строки сам по себе является последним средством, поскольку он чреват ошибками (что если в arg1 есть запятая? Что если в arg2 есть кавычки? И т. Д.).