把字典变成两个列表,一个用于键,另一个用于值?

11 python dictionary

collections.defaultdict从一个文件中读取了一个类型的对象pickle.load.它具有每个字符串键的数值.它似乎就像一个类型的对象dict,或者我可能是错的.

我想从对象中创建两个列表,一个列表包含所有键,另一个列出所有值.我怎么能为类型的对象做到这一点dict?我怎么能为类型的对象做到这一点collections.defaultdict

例如,来自类型的对象 dict

tel = {'jack': 4098, 'sape': 4139}
Run Code Online (Sandbox Code Playgroud)

我想创建两个列表['jack', 'sape'][4098, 4139].

谢谢!!

ise*_*dev 18

你可以在Python 2.x中使用:

keys = tel.keys()
values = tel.values()
Run Code Online (Sandbox Code Playgroud)

或者类似于时髦的东西:

(keys,values) = zip(*tel.iteritems())
Run Code Online (Sandbox Code Playgroud)

在Python 3.x中:

keys = list(tel.keys())
values = list(tel.values())
(keys,values) = zip(*tel.items())
Run Code Online (Sandbox Code Playgroud)

(如在3.x中,keys(),values()和items()返回迭代器)


Ósc*_*pez 7

一步(Python 2.x):

keys, values = zip(*tel.iteritems())
Run Code Online (Sandbox Code Playgroud)

或者在Python 3.x中:

keys, values = zip(*tel.items())
Run Code Online (Sandbox Code Playgroud)