字典(dictionary)是除列表之外python中最靈活的內建資料結構型別。列表是有序物件的集合,字典是無序物件的集合。兩者區別在於:字典當中的元素是通過鍵來訪問的(鍵值對),而不是通過偏移訪問。
字典用花括號"{}"標識。字典就是c++標準庫的map,每乙個元素都是成對的,包含key、value兩部分。關鍵字key為不可變型別,如字元型、數字型、元組等,列表、字典等不可作為關鍵字,value可以是任意型別。
鍵是唯一的,並且字典只認最後一次賦的鍵值。
#字典的第一種定義方法
>>>dict = {}
>>>dict["name"] = "jack"
>>>dict["age"] = 18
>>>dict["***"] = "male"
#字典的第二種定義方法
>>>dicttest =
#輸出完整的字典
>>>print dict
#字典的遍歷
>>> dict1
>>> for i,j in dict1.items():
... print i,j #i代表字典的key,j代表字典的value
...add bj
tel 18888888888
name jack
>>> for i in dict1:
... print "%s : %s" %(i,dict1[i])
...add : bj
tel : 18888888888
name : jack
#格式化輸出
>>> for i,j in dict1.items():
... print "%s : %s" %(i,j)
...add : bj
tel : 18888888888
name : jack
#輸出鍵為'name'的值
>>>print dict['name']
jack
#字典中值的修改
>>> dicttest['name'] = 'ruby'
>>> dicttest
#向字典中追加新元素
>>>> dicttest['school'] = 'bkd'
>>> dicttest
#刪除字典中的元素
>>> dict1
>>> del dict1['add']
>>> dict1
字典(dict)的函式彙總:
#清空字典中所有的條目
>>>dict.clear()
>>>dict
{}
#輸出所有的鍵,相當於先把key轉成list,然後以list形式列印輸出
>>>print dict.keys()
['age','name', '***']
#輸出所有的值,相當於先把value轉成list,然後以list形式列印輸出
>>>print dict.values()
[18,'jack', 'male']
#同dict[key],只是多了乙個沒有則返回預設值0,預設值可以自由定義。但dict[key]如果沒有,就會報錯。
>>>dict.get('***',0)
'male'
>>>dict.get('addr',0)
0
#鍵存在返回true,否則返回false
>>>dict.has_key('name')
true
>>>dict.has_key('a')
false
#返回字典中鍵的列表
>>>dict.keys()
['age','name', '***']
#返貨字典中所有鍵值對的item
>>>dict.items()
[('age',18), ('name', 'jack'), ('***', 'male')]
#合併兩字典,合併時注意,dict中存在的會被覆蓋,不存在的會增加。
>>>dict.update(dicttest)
>>>dict
#得到乙個元素,並從字典中刪除它。已空則丟擲異常。
>>>dict.popitem()
('addr','china')
>>>dict
#字典拷貝,但是dict和dict1所指的記憶體空間是不一樣的。
>>>dict1 = dict.copy()
>>>dict1
>>>dict
#檢視字典在記憶體空間中存放的位址
>>>id(dict1)
39352480
>>>id(dict)
39320432
#字典複製,相當於給dict1指定了乙個別名,它們是指向同一記憶體空間的,區別與字典的拷貝函式。
>>>dict12 = dict1
>>>id(dict12)
39352480
#dict.fromkeys(seq,val=none) 建立並返回乙個新字典,以seq(序列)中的元素做該字典的鍵,val 做該字典中所有鍵對應的初始值(如果不提供此值,則預設為none)
>>> dict3 = {}
>>> dict3 = dict3.fromkeys(str1,0)
>>> dict3
#dict.setdefault(key,default=none) 如果字典中不存在key 鍵,由dict[key]=default 為它賦值。
>>> dict1
>>> dict1.setdefault(1,0)
0>>> dict1
python資料型別之字典型別
字典常用方法 clear get pop update copy items popitem values fromkeys keys setdefault 字典的表示方法 info dic 常用操作 1.存 取 info dic print info dic name11111111 找不到則報錯...
python資料型別之字典
字典 dictionary 字典是 python 資料型別中唯一類似 key value 雜湊表的對映型別,字典物件是可變的,但 key值是不可變的 1.字典的定義 1 空字典的定義 d 2 一般字典的定義 d 3 通過內建方法 fromkeys 定義 字典中有相同的 value 值,預設為 non...
Python 資料型別之字典
鑑於把字典留在最後,我將在本篇中做出解答。我第一次接觸 字典 的時候,它就給我留下了深刻的印象。至於為什麼,下面揭曉答案 因為它獨特的儲存形式 鍵值對 key value 對於這一部分內容,我們需要先理解 對映 它的意義在於 提供 作為索引的鍵,與作為資料的值 之間的 對應關係。而字典,可以說是把這...