想一想:
如果有列表
namelist = [『xiaozhang』, 『xiaowang』, 『xiaoli』]
需要對"xiaowang"這個名字寫錯了,通過**修改:
namelist[1] = 『xiaoxiaowang』
如果列表的順序發生了變化,如下
namelist = [『xiaowang』, 『xiaozhang』, 『xiaoli』]
此時就需要修改下標,才能完成名字的修改
namelist[0] = 『xiaoxiaowang』
有沒有方法,既能儲存多個資料,還能在訪問元素的很方便就能夠定位到需要的那個元素呢?
答:字典
典和列表一樣,也能夠儲存多個資料,列表中找某個元素時,是根據下標進行的
字典中找某個元素時,是根據』名字』(就是冒號前面的值)
字典的每個元素由兩部分組成,鍵:值
查
根據鍵訪問值
info =
print
(info[
'name'])
print
(info[
'address'
])
假設:若訪問不存在的鍵,會出現什麼情況呢?
info =
print
(info[
'gender'
])
會出現 keyerror: 『gender』 錯誤想一想:假設我們不確定字典中是否存在某個鍵而又想獲取其值時,我們應該如何操作?
答:我們可以使用get()方法
info =
temp = info.get(
'gender'
)print
(temp)
print
(type
(temp)
)# none
#
當get()獲取了不存在的值,我們還可以設定固定的返回值
info =
temp = info.get(
'gender',18
)print
(temp)
print
(type
(temp)
)# 18
#
改
info =
info[
'name']=
'小明'
print
(info[
'name'
])
字典的更改直接對應鍵來更新值就可以增
student =
student[
'小娜']=
['小娜',21
]print
(student[
'小娜'
])
字典的增加和字典的修改操作類似,如果不存在則新增,存在則更新刪
對字典的刪除操作,有以下兩種
info =
print
('刪除前,%s'
% info)
del info[
'name'
]print
('刪除後,%s'
% info)
注:del可以直接刪除整個字典
info =
print
('清空前,%s'
% info)
info.clear(
)print
('清空後,%s'
% info)
clear直接把字典內的所有內容清空len()
測量字典中,鍵值對的個數
info =
print
(len
(info)
)
keys()
返回乙個包含字典所有key的列表
info =
print
(info.keys(
))
values()
返回乙個包含所有value的列表
info =
print
(info.values(
))
items()
返回乙個包含所有(鍵、值)元祖的列表
info =
print
(info.items(
))
備註:在常見操作中輸出的結果中都會被dict_…()乙個元祖包著,只需要強轉為list型別即可遍歷字典的key
info =
# 預設不加keys也會遍歷key
for i in info.keys():
print
(i)
遍歷字典的valueinfo =
for i in info.values():
print
(i)
遍歷字典的項(元素)info =
# 每一項被乙個元祖包著
for i in info.items():
print
(i)
列舉遍歷info =
for i, j in
enumerate
(info)
:print
(i, j)
python內建字典 python中字典的內建方法
python字典包含了以下內建方法 功能 字典 clear 函式用於刪除字典內所有元素。語法 dict.clear 引數 無 返回值 沒有任何返回值。dict print 字典長度 d len dict 字典長度 2 dict.clear print 字典刪除後長度 d len dict 字典刪除後...
python中的字典
python字典是另一種可變容器模型,且可儲存任意型別物件,如字串 數字 元組等其他容器模型。一 建立字典 字典由鍵和對應值成對組成。字典也被稱作關聯陣列或雜湊表。基本語法如下 dict 也可如此建立字典 dict1 dict2 注意 每個鍵與值用冒號隔開 每對用逗號,每對用逗號分割,整體放在花括號...
Python中的字典
1.字典的定義 s print s,type s 字典 key value 鍵值對 value值可以是任意資料型別 s print s,type s 工廠函式 d dict print d,type d d dict a 1,b 2 print d,type d 字典的巢狀 student 6575...