1. 程式人生 > 程式設計 >在Python中實現字典反轉案例

在Python中實現字典反轉案例

有時候會碰到需求,將字典來反轉,即:字典中的鍵作為值,而字典中的值作為鍵。對於字典比較小,可以使用普通方法

方法一:

使用普通方法轉換

>>> d = {'a': 1,'b': 2,'c': 3}
>>> def invert_dict(d):
...   return dict([(v,k) for (k,v) in d.iteritems()])
...
>>> invert_dict(d)
{1: 'a',2: 'b',3: 'c'}

方法二:

使用itertools模組中的izip方法來轉換

>>> d = {'a': 1,'c': 3,'d': 4}
>>> from itertools import izip
>>> def invert_dict(d):
...   return dict(izip(d.itervalues(),d.iterkeys()))
...
>>> invert_dict(d)
{1: 'a',3: 'c',4: 'd'}
>>>

備註:

1. 字典比較大時,使用itertools模組中的izip方法來轉換要高效的多.

2. 反轉之前值應該要確保不是列表這樣不可hash的值,否則不能反轉.

補充知識:python 字典鍵和值翻轉輸出程式碼

我就廢話不多說了,大家還是直接看程式碼吧~

dict=eval(input()) #輸入格式:dict = {"a":1,"b":2}
dict_new={}
try:
  for k,v in dict.items():
    dict_new[v]=k
  print(dict_new)
except:
  print("輸入錯誤")

以上這篇在Python中實現字典反轉案例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。