Python中字典的用法

  • 2020 年 1 月 13 日
  • 筆記

Python中字典的用法

註:以下所有示例使用的是Python3.5.版本

Python中的字典與C++中的map容器很相似,都是鍵值對的形式存儲,然而Python中對字典的操作遠比C++中對map的操作要方便的多。C++中的map與Python中字典的共同點是鍵是唯一的。

C++中聲明一個map:map<int,string>m_Test;

Python中聲明一個字典:dict = {} 由此便聲明了一個空的字典。

向字典dict中添加數據dict["name"] = 『Lisi』,當然Value的值也可以是一個列表或是元組也可以是另一個字典

dict = {}  list = ['ZhangSan','Lisi','WangEr']  dict["name"] = list  print(dict)

輸出:

{'name': ['ZhangSan', 'Lisi', 'WangEr']}

下面我們就來介紹下Python中字典的使用方法:

1 copy(self)方法,返回一個淺拷貝的字典

dict = {"name":"Tmac","age":24}  test = dict.copy()  print(test)

輸出:

{'age': 24, 'name': 'Tmac'}

2 fromkeys(seq, value=None)方法,創建一個新的字典,以seq中的所有元素作為鍵,以value作為默認的值。

test = {}.fromkeys('NBA',"Kobe")  print(test)

輸出:

{'N': 'Kobe', 'B': 'Kobe', 'A': 'Kobe'}

3 get(self, key, default=None)方法,返回鍵key對應的value值,若沒有該鍵返回默認值,默認值可指定

dict = {"name":"Tmac","age":24,'NBA':'kobe'}  test = dict.get('name')  print(test)

輸出:

Tmac

dict = {"name":"Tmac","age":24,'NBA':'kobe'}  test = dict.get('Hi','HaHa')  print(test)

輸出:

HaHa

4 items(self)方法,將字典中的鍵值對存入元組並以列表的形式返回

dict = {'name':'Tmac','age':24,'NBA':'kobe'}  test = dict.items()  print(test)

輸出:

dict_items([('name', 'Tmac'), ('NBA', 'kobe'), ('age', 24)])

5 keys(self)方法,返回一個以鍵組成的列表

dict = {'name':'Tmac','age':24,'NBA':'kobe'}  test = dict.keys()  print(test)

輸出:

dict_keys(['name', 'NBA', 'age'])

6 pop(self, key, default=None)方法,如果鍵存在則刪除鍵並將其值返回,若沒有返回默認值

dict = {'name':'Tmac','age':24,'NBA':'kobe'}  test = dict.pop('NBA')  print(test)  print(dict)

輸出:

kobe {'name': 'Tmac', 'age': 24}

7 popitem(self)方法,從字典中刪除並返回一個鍵值對

dict = {'name':'Tmac','age':24,'NBA':'kobe'}  test = dict.popitem()  print(test)  print(dict)

輸出:

('name', 'Tmac') {'NBA': 'kobe', 'age': 24}

8 setdefault(self, key, default=None)方法,返回字典中key對應的value值,若該key不存在可設置默認的返回值

dict = {'name':'Tmac','age':24,'NBA':'kobe'}  test = dict.setdefault('age')  print(test)

輸出:

24

9 update(self, other=None, **kwargs)方法,使用一個字典中的元素更新另一個字典,若該鍵值存在則重寫該鍵值對

dict = {'name':'Tmac','age':24,'NBA':'kobe'}  dict1 = {'key':'Test'}  dict.update(dict1)  print(dict)

輸出:

{'NBA': 'kobe', 'key': 'Test', 'name': 'Tmac', 'age': 24}

dict = {'name':'Tmac','age':24,'NBA':'kobe'}  dict1 = {'age':38}  dict.update(dict1)  print(dict)

輸出:

{'NBA': 'kobe', 'age': 38, 'name': 'Tmac'}

10 values()方法,以列表的形式返回字典中value的值

dict = {'name':'Tmac','age':24,'NBA':'kobe'}  test = dict.values()  print(test)

輸出:

dict_values([24, 'kobe', 'Tmac'])