Как я могу преобразовать словарь в строку аргументов ключевых слов? - PullRequest
3 голосов
/ 10 мая 2010

мы можем преобразовать словарь в kw, используя **kw, но если я хочу kw как str(kw), а не str(dict), как я хочу строку с аргументами ключевого слова для code_generator,

если я пройду

obj.method(name='name', test='test', relation = [('id','=',1)])

Я хочу, чтобы функция возвращала строку вроде

"name='name', test='test', relation = [('id','=',1)]"

1 Ответ

8 голосов
/ 10 мая 2010

Тот же синтаксис используется для принятия произвольных аргументов ключевого слова.

def somestring(**kwargs):
  return ', '.join('%s=%r' % x for x in kwargs.iteritems())

Обратите внимание, что dicts произвольно упорядочены, поэтому результирующая строка может быть в другом порядке, чем переданные аргументы.

...