用值替换字典键

Kat*_*e J 3 python dictionary

我从一个文本文件制作了一个字典,并想用它来用它们的值替换出现在单独文件中的键。

例如,我的字典看起来像...

names = {1:"Bob", 2:"John", 3:"Tom"}
Run Code Online (Sandbox Code Playgroud)

另一个文件看起来像......

1 black cat  
2 gray elephant  
3 brown dog  
Run Code Online (Sandbox Code Playgroud)

我希望它最终成为...

Bob black cat  
John gray elephant  
Tom brown dog  
Run Code Online (Sandbox Code Playgroud)

到目前为止,我只编写了代码来制作字典

names = {}  
for line in open("text.txt", 'r'):  
    item = line.split()  
    key, value = item[0], item[2]  
    names[key] = value  
Run Code Online (Sandbox Code Playgroud)

我想打开第二个文件并使用名称字典将出现在那里的键替换为其值。我已经看到您可以使用,replace(key, dict[key])但不确定如何使用。

Dan*_*Dan 5

如果您使用字典,我会将它们加载到两个单独的字典中,然后合并它们。

如果您已将名称加载到names,并将动物加载到animals,您可以像这样合并它们:

蟒蛇3

merged = {}
for key, name in names.items():
    merged[name] = animals[key]
Run Code Online (Sandbox Code Playgroud)

蟒蛇2

merged = {}
for key, name in names.iteritems():
    merged[name] = animals[key]
Run Code Online (Sandbox Code Playgroud)


小智 5

试试下面的代码:

new_dict = {value:key for (key,value) in old_dict.items()}