gpt4 book ai didi

python - 交换字典的内容

转载 作者:太空宇宙 更新时间:2023-11-03 15:16:31 25 4
gpt4 key购买 nike

我有一个字典,其中的键和值将被交换。例如:

dic = {"indianapolis":"indiana", "columbus":"ohio", "jackson":"mississippi",
"phoenix":"arizona"}

输出应该是:

{"indiana":"indianapolis", "ohio":"columbus", "mississippi":"jackson",
"arizona":"phoenix"}

这是我尝试过的方法,但限制是只应使用 sorted()split() 函数,不应使用其他内置函数(如 keys()values()items()lambda)。不太确定如何进一步进行。有人可以帮忙吗?我是字典新手。

def interchange(input_dict):
temp = {}
dic = input_dict
for i in dict:
temp[i[1]] = i[0]
return temp_dic

最佳答案

only .sorted(), .split() functions should be used

使用 sorted 和字典理解:

>>> dic = {"indianapolis":"indiana", "columbus":"ohio", "jackson":"mississippi", "phoenix":"arizona"}
>>> {dic[k]:k for k in sorted(dic)}
{'ohio': 'columbus', 'mississippi': 'jackson', 'arizona': 'phoenix', 'indiana': 'indianapolis'}

sorted 按排序顺序返回字典的键,尽管最终字典的顺序是任意的。上面的代码等同于:

>>> sorted(dic)
['columbus', 'indianapolis', 'jackson', 'phoenix']
>>> new_dic = {}
>>> for k in sorted(dic):
... new_dic[dic[k]] = k
...
>>> new_dic
{'ohio': 'columbus', 'mississippi': 'jackson', 'arizona': 'phoenix', 'indiana': 'indianapolis'}

更新:

def interchange(input_dict):
return {input_dict[k]:k for k in sorted(input_dict)}
...
>>> interchange(dic)
{'ohio': 'columbus', 'mississippi': 'jackson', 'arizona': 'phoenix', 'indiana': 'indianapolis'}

关于python - 交换字典的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20455477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com