Python 单语句字典生成器

A23*_*A23 -1 python dictionary dictionary-comprehension

Python 有没有办法做到

new_list = [x for x in items]
Run Code Online (Sandbox Code Playgroud)

(列表理解)字典?就像是

new_dict = [x=>y for x, y in items.iteritems()]
Run Code Online (Sandbox Code Playgroud)

这样我得到

{x: y}
Run Code Online (Sandbox Code Playgroud)

Mar*_*ers 5

是的,通过使用:

{x: y for x, y in items.iteritems()}
Run Code Online (Sandbox Code Playgroud)

它称为dict 理解,您需要 Python 2.7 或更高版本才能使用该语法。

在 Python 2.6 及更早版本中,使用生成器表达式和dict()可调用函数,为其提供(key, value)元组:

dict((x, y) for x, y in items.iteritems())
Run Code Online (Sandbox Code Playgroud)