Python 字典詳解
什么是字典?
字典在 Python 中是一個(gè)無序的數(shù)據(jù)集合,字典使用鍵值對(duì)進(jìn)行存儲(chǔ)。
Dict = {'key':'value'}
創(chuàng)建字典
- 直接賦值,使用花括號(hào) { }
- 使用 Dict函數(shù) 創(chuàng)建空字典
1. 直接賦值
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
print(Dict)
print(type(Dict))
>>> {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
>>> <class 'dict'>
2. 使用 dict()函數(shù)創(chuàng)建空字典
Dict = dict()
print(Dict)
print(type(Dict))
>>> {}
>>> <class 'dict'>
3. 獲取字典元素
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
print(Dict['察查司'])
>>> 陸之道
4. 唯一的鍵,如果字典中有倆個(gè)或多個(gè)相同的鍵,默認(rèn)取最后一個(gè)
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨', '罰惡司': '李鬼'}
print(Dict['罰惡司'])
>>> 李鬼
小結(jié):
- 字典由鍵(key)和值(value)組成。
- 創(chuàng)建可以使用花括號(hào),也可以使用 dict 函數(shù),元素之間用逗號(hào)隔開,鍵值之間使用冒號(hào)隔開。
- 注:鍵(key)必須是不可變類型,比如數(shù)字,字符串,而值(value)隨意。
- 字典元素使用鍵(key)來獲取。
- 鍵是唯一的,盡量不要相同。
字典的增
Dict[鍵] = '值'
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
Dict['居民'] = '繪夢(mèng)獅'
print(Dict)
>>> {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨', '居民': '繪夢(mèng)獅'}
字典的改
| 方法 | 描述 |
| 直接修改 | 直接修改,方法跟增差不多 |
| update | 將字典元素添加到另一個(gè)字典中,如果被添加字典已有該元素則修改,否則增加 |
Dict[鍵] = '值'
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
# 如果字典中已存在該鍵則修改對(duì)應(yīng)的值,否則增加
Dict['罰惡司'] = '繪夢(mèng)獅'
print(Dict)
>>> {'賞善司': '魏征', '罰惡司': '繪夢(mèng)獅', '察查司': '陸之道', '陰律司': '崔玨'}
2. 使用 update 方
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
Dict2 = {'天師': '鐘馗', '罰惡司': '天師鐘馗'}
Dict.update(Dict2)
print(Dict)
>>> {'賞善司': '魏征', '罰惡司': '天師鐘馗', '察查司': '陸之道', '陰律司': '崔玨', '天師': '鐘馗'}
字典的刪
| 方法 | 描述 |
| del | 刪除某個(gè)元素,或刪除整個(gè)字典 |
| pop | 刪除某個(gè)元素 |
| popitme | 刪除字典中最后一個(gè)元素 |
| clear | 清空字典 |
1. del 方法
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
# 刪除某個(gè)元素根據(jù)鍵
del Dict['罰惡司']
# 刪除整個(gè)字典
# del Dict
print(Dict)
>>> {'賞善司': '魏征', '察查司': '陸之道', '陰律司': '崔玨'}
2. pop 方法
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
Dict.pop('賞善司')
print(Dict)
>>> {'罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
3. popitme 方法
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
Dict.popitem()
print(Dict)
>>> {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道'}
4. clear 方法
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
Dict.clear()
print(Dict)
# 因?yàn)樽值浔磺蹇樟?
>>> {}
字典的查
| 方法 | 描述 |
| in | 判斷元素是否在字典中,返回值為 Bool |
| not in | 與 in 相反 |
因?yàn)檫@是通用方法,前面已經(jīng)說了很多次,現(xiàn)在就跳過了。
字典取值
| 方法 | 描述 |
| keys |
獲取字典中的鍵,返回一個(gè)迭代 |
| values | 獲取字典中的值,返回一個(gè)迭代 |
| items | 獲取字典的鍵值,返回一個(gè)迭代 |
1. keys 方法
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
Key = Dict.keys()
print(Key)
# 對(duì)于迭代對(duì)象我們可以遍歷它,或者將它轉(zhuǎn)化為列表進(jìn)行操作
>>> dict_keys(['賞善司', '罰惡司', '察查司', '陰律司'])
2. values 方法
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
Value = Dict.values()
print(Value)
# 對(duì)于迭代對(duì)象我們可以遍歷它,或者將它轉(zhuǎn)化為列表進(jìn)行操作
>>> dict_values(['魏征', '鐘馗', '陸之道', '崔玨'])
3. items 方法
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
Item = Dict.items()
print(Item)
# 對(duì)于迭代對(duì)象我們可以遍歷它,或者將它轉(zhuǎn)化為列表進(jìn)行操作
>>> dict_items([('賞善司', '魏征'), ('罰惡司', '鐘馗'), ('察查司', '陸之道'), ('陰律司', '崔玨')])
字典復(fù)制
老樣子使用 copy 函數(shù)
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
copy_Dict = Dict.copy()
Dict.clear()
print(Dict)
print(copy_Dict)
>>> {}
>>> {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
遍歷字典
- 遍歷 key
- 遍歷 value
- 遍歷 item
- 遍歷 key - value
1. 遍歷 key
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
for i in Dict.keys():
print(i)
>>> 賞善司
罰惡司
察查司
陰律司
2. 遍歷 value
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
for i in Dict.values():
print(i)
>>> 魏征
鐘馗
陸之道
崔玨
3. 遍歷 item
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
for i in Dict.items():
print(i)
>>> ('賞善司', '魏征')
('罰惡司', '鐘馗')
('察查司', '陸之道')
('陰律司', '崔玨')
4. 遍歷 key與 value
Dict = {'賞善司': '魏征', '罰惡司': '鐘馗', '察查司': '陸之道', '陰律司': '崔玨'}
for key, value in Dict.items():
print(key, value)
>>> 賞善司 魏征
罰惡司 鐘馗
察查司 陸之道
陰律司 崔玨
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
解決tensorflow/keras時(shí)出現(xiàn)數(shù)組維度不匹配問題
這篇文章主要介紹了解決tensorflow/keras時(shí)出現(xiàn)數(shù)組維度不匹配問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-06-06
Python+Selenium+PIL+Tesseract自動(dòng)識(shí)別驗(yàn)證碼進(jìn)行一鍵登錄
本篇文章主要介紹了Python+Selenium+PIL+Tesseract自動(dòng)識(shí)別驗(yàn)證碼進(jìn)行一鍵登錄,具有一定的參考價(jià)值,有興趣的可以了解下2017-09-09
【Python】Python的urllib模塊、urllib2模塊批量進(jìn)行網(wǎng)頁下載文件
這篇文章主要介紹了Python的urllib模塊、urllib2模塊批量進(jìn)行網(wǎng)頁下載文件,就是一個(gè)簡單的從網(wǎng)頁抓取數(shù)據(jù)、下載文件的小程序,需要的可以了解一下。2016-11-11
pycharm執(zhí)行python時(shí),填寫參數(shù)的方法
今天小編就為大家分享一篇pycharm執(zhí)行python時(shí),填寫參數(shù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-10-10
python使用在線API查詢IP對(duì)應(yīng)的地理位置信息實(shí)例
這篇文章主要介紹了python使用在線API查詢IP對(duì)應(yīng)的地理位置信息實(shí)例,需要的朋友可以參考下2014-06-06
熵值法原理及Python實(shí)現(xiàn)的示例詳解
熵值法也稱熵權(quán)法,是學(xué)術(shù)研究及實(shí)際應(yīng)用中的一種常用且有效的編制指標(biāo)的方法。本文就來和大家聊聊熵值法原理及Python實(shí)現(xiàn),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-02-02
pycharm中代碼回滾到指定版本的兩種實(shí)現(xiàn)方法(附帶截圖展示)
在編寫代碼的時(shí)候,經(jīng)常會(huì)出現(xiàn)寫的代碼存在一些問題,但是比較難以發(fā)現(xiàn)具體存在的問題在哪里,需要將帶代碼恢復(fù)到指定的版本,下面這篇文章主要給大家介紹了關(guān)于pycharm中代碼回滾到指定版本的兩種實(shí)現(xiàn)方法,需要的朋友可以參考下2022-06-06

