1. 程式人生 > >Python中的字典dict

Python中的字典dict

目錄

字典

字典的訪問

字典

a={  'name':'xie' ,  'age':20 ,  3:'c'  }

字典是 Python 重要的資料型別,字典是由“鍵—值”對組成的集合,字典中的“值”通過“鍵”來引用。 字典也稱為關聯陣列、對映或散列表。

Python字典利用了“雜湊”方法,使用專門的雜湊函式完成,即字典中的每個鍵都被轉換為一個數字—雜湊值。字典中值儲存在一個底層列表中,並用雜湊值作為索引。訪問值時,將提供的鍵轉為雜湊值,再跳到列表的相應位置。 使用“鍵”來訪問字典值效率極高。另外與列表一樣,字典也是可以改變的:可以新增、刪除或修改“鍵—值”對

注意,對於字典的鍵有兩個限制:

  • 字典中的鍵必須獨一無二,即在同一個字典中,任何兩個鍵都不能相同,如果有相同的鍵,則前面的鍵值對會刪掉
  • 鍵必須是不可變的。因此,字典鍵不能是 列表、字典和集合,可以是數字、字串、元組
>>a={'name':'xie',5:6,(1,2):'ha','name':'wang'}
>>print(a)
{'name': 'wang', 5: 6, (1, 2): 'ha'}
>>for i in a:
>>    print(i,type(i))
name <class 'str'>
5 <class 'int'>
(1, 2) <class 'tuple'>

字典中常見的函式

字典的訪問

字典的訪問與元組、列表有所不同,元組和列表是通過數字索引獲取對應的值, 而字典是通過key值獲取相應的value值。 

>>a={'name':'xie','sex':'man','age':20}
>>print(a['name'])
xie
>>print(a.keys())
>>print(a.values())
dict_keys(['name', 'sex', 'age'])    //type型別是 dict_keys
dict_values(['xie', 'man', 20])      //type型別是 dict_values

字典中 鍵值key 的遍歷

>>>a={'name':'xie','age':20,3:'c'}
>>>for i in a:
>>>    print(i)
name
age
3

字典中 值Value 的遍歷 

>>a={'name':'xie','sex':'man','age':20}
>>for i in a:
>>    print(a[i])
xie
man
20

字典中鍵值和資料的遍歷

>>>a={'name':'xie','age':20,3:'c'}
>>>b=a.items()
>>>for i in b:
>>>   print(i)
('name', 'xie')         //type型別是元組
('age', 20)
(3, 'c')

>>>for key,value in b:
>>>   print(key,value)
name xie
age 20
3 c

字典的操作(增刪改查)

>>dict={'a':'apple','b':'banana','g':'grape','o':'orange'}
>>print(dict)
>>dict['w']='water'         //增
>>print(dict) 
>>del(dict['a'])            //刪
>>print(dict)
>>dict['g']='grapefruit'    //改
>>print(dict)
>>print(dict['g'])          //查
{'a': 'apple', 'b': 'banana', 'g': 'grape', 'o': 'orange'}
{'a': 'apple', 'b': 'banana', 'g': 'grape', 'o': 'orange', 'w': 'water'}
{'b': 'banana', 'g': 'grape', 'o': 'orange', 'w': 'water'}
{'b': 'banana', 'g': 'grapefruit', 'o': 'orange', 'w': 'water'}
grapefruit