最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python入門之字典的使用教程

 更新時間:2022年09月06日 09:12:26   作者:胡安民-獨行者  
Python字典是一種可變?nèi)萜髂P?,且可存儲任意類型對象,如字符串、?shù)字、元組等其他容器模型。本文將為大家詳細講講字典的使用教程,需要的可以參考一下

前沿

Python字典是一種可變?nèi)萜髂P?,且可存儲任意類型對象,如字符串、?shù)字、元組等其他容器模型。

字典的每個鍵值key=>value對用冒號 : 分割,每個對之間用逗號,分割,整個字典包括在花括號{}中 ,格式如下: {key1 : value1, key2 : value2 }

字典操作

創(chuàng)建字典

字典由鍵和值組成,字典中所有鍵值均要放在 大括號 {} 里面,鍵與值之間通過冒號 : 分割,而每一對鍵值之間則通過 逗號 , 間隔起來,其格式如下:

dic1 = {"a": "天貓", 2: "京東", "c": "拼多多", "C": "PDD"}

需要注意的是,字典中的鍵必須是唯一的,同時字典的鍵必須是不可變對象,如 字符串、數(shù)字 等,而鍵對應(yīng)的值,則可以是任意數(shù)據(jù)類型。

嵌套字典

myfamily = {
  "child1" : {
    "name" : "Phoebe Adele",
    "year" : 2002
  },
  "child2" : {
    "name" : "Jennifer Katharine",
    "year" : 1996
  },
  "child3" : {
    "name" : "Rory John",
    "year" : 1999
  }
}

dict() 創(chuàng)建字段

thisdict = dict(brand="Porsche", model="911", year=1963)
# 請注意,關(guān)鍵字不是字符串字面量
# 請注意,使用了等號而不是冒號來賦值
print(thisdict)

訪問字典中的值

在字典中,我們需要通過字典的鍵來訪問其對應(yīng)的值。

通過 dict[key] 取值

    dict1 = {"name": "wintest", "age": 13}
    print(dict1["name"])

如果鍵不存在,那么取值時就會報錯:KeyError: ‘xxx’

通過 get(key) 取值

    dict1 = {"name": "wintest", "age": 13}
    print(dict1.get("name"))

如果鍵不存在,那么取值時會返回 None ,并不會報錯,這種情況下我們也可以讓其返回一個指定的值,該操作并不會影響字典的鍵值。如下:

dict1.get("name", "123")  # name鍵存如果不存在那么返回123

更新字典

通過 dict[key] 修改字典

在字典中,我們可以通過字典的鍵 dict[key] 來修改其對應(yīng)值,如果鍵不存在,那么就會把該鍵值對添加到字典中。

    dict1 = {"name": "wintest", "age": 13}
    # 如果不存在那么就是添加,如果存在那么就是修改
    dict1["xxx"] = "123"
    dict1["age"] = 66

在上面我們提到,字典中的鍵必須是唯一的,如果在創(chuàng)建字典時對同一個鍵賦值多次,那么只有最后一個值會被記住,因為對同一個鍵多次賦值時,其實就相當(dāng)于 dict[key] 對字典進行修改。

通過 update(dict) 修改字典

字典中的 update() 方法,傳入?yún)?shù)需要是一個新字典,該操作會把新字典中的鍵值對更新到原字典中。

    dict1 = {"name": "wintest", "age": 13}
    dict2 = {"name": "hihihi", "sex": "?"}
    dict1.update(dict2)  #  把 dict2 中鍵值對,更新到 dict1 中   ,存在就更新不存在就添加
    print(dict1)

刪除字典元素

通過 del 刪除字典中的鍵值對

    dict1 = {"name": "wintest", "age": 13}
    del dict1["name"]
    print(dict1)

如果被刪除的鍵不存在那么就會報錯KeyError: ‘xxx’

通過 pop() 刪除字典中的鍵值對

    dict1 = {"name": "wintest", "age": 13}
    dict1.pop("name")
    print(dict1)
    dict1.clear() # 清空字節(jié), 只是內(nèi)容被清空了, 也就是{}
    del dict1  # 刪除整個字典,被刪除的dict1 沒法被使用了

使用 pop() 方法有一個好處,如果要刪除的鍵值對不存在,那么就可以設(shè)置指定返回值來避免出現(xiàn)報錯,如下:

    dict1 = {"name": "wintest", "age": 13}
    del_V=dict1.pop("xxx", "不存在的key")  # 鍵不存在,指定返回值
    print(del_V)# 不存在的key

刪除最后插入的鍵值對 popitem()

car = {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}

x = car.popitem()

print(x)  # ('year', 1963)

檢查鍵是否存在

要確定字典中是否存在指定的鍵,請使用 in 關(guān)鍵字:

    dict1 = {"name": "wintest", "age": 13}
    print("name" in dict1) # True

字典的遍歷

字典在遍歷時,也可以類似列表、集合等數(shù)據(jù)類型,通過關(guān)鍵字 in 來實現(xiàn)。

dict1 = {"name": "wintest", "age": 13}
for key in dict1:
    print(key, dict1[key])

我們也可以使用 dict1.items() ,先以列表返回一個視圖對象,然后對其遍歷時,可以直接獲取到字典中的鍵和值,如下:

    dict1 = {"name": "wintest", "age": 13}
    for key, value in dict1.items():
        print(key, value)

您還可以使用 values() 函數(shù)返回字典的值:

    dict1 = {"name": "wintest", "age": 13}
    for x in dict1.values():
        print(x)

字典函數(shù)

獲取字段的長度

    dict1 = {"name": "wintest", "age": 13}
    print(len(dict1)) # 2

復(fù)制字典

您不能通過鍵入 dict2 = dict1 來復(fù)制字典,因為:dict2 只是對 dict1 的引用,而 dict1 中的更改也將自動在 dict2 中進行。 有一些方法可以進行復(fù)制,一種方法是使用內(nèi)建的字典方法 copy()。

thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = thisdict.copy()
print(mydict)

制作副本的另一種方法是使用內(nèi)建方法 dict()。

thisdict =    {
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = dict(thisdict)
print(mydict)

批量創(chuàng)建鍵

x = ('key1', 'key2', 'key3')

thisdict = dict.fromkeys(x,None)   

print(thisdict)  #  {'key1': None, 'key2': None, 'key3': None}

到此這篇關(guān)于Python入門之字典的使用教程的文章就介紹到這了,更多相關(guān)Python字典內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python socket連接中的粘包、精確傳輸問題實例分析

    Python socket連接中的粘包、精確傳輸問題實例分析

    這篇文章主要介紹了Python socket連接中的粘包、精確傳輸問題,結(jié)合實例形式分析了Python socket連接中的粘包、精確傳輸相關(guān)問題原因、解決方案與操作注意事項,需要的朋友可以參考下
    2020-03-03
  • Python中函數(shù)的多種格式和使用實例及小技巧

    Python中函數(shù)的多種格式和使用實例及小技巧

    這篇文章主要介紹了Python中函數(shù)的多種格式和使用實例及小技巧,本文講解了普通格式、帶收集位置參數(shù)的函數(shù)、帶收集關(guān)鍵字參數(shù)的函數(shù)、函數(shù)特殊用法、內(nèi)嵌函數(shù)和閉包等內(nèi)容,需要的朋友可以參考下
    2015-04-04
  • Python的scikit-image模塊實例講解

    Python的scikit-image模塊實例講解

    在本篇文章里小編給大家整理了一篇關(guān)于Python的scikit-image模塊實例講解內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。
    2020-12-12
  • 層次分析法在matlab上的實現(xiàn)方式

    層次分析法在matlab上的實現(xiàn)方式

    這篇文章主要介紹了層次分析法在matlab上的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Python調(diào)用Ollama庫本地大語言模型使用詳解

    Python調(diào)用Ollama庫本地大語言模型使用詳解

    ollama是一個用于調(diào)用本地大語言模型的Python庫,提供了簡單、高效的API接口,下面文章詳細介紹了如何安裝、使用、設(shè)置自定義參數(shù)、集成流式生成、錯誤處理以及與其他工具集成,需要的朋友可以參考下
    2025-02-02
  • python編寫腳本之pyautogui的安裝和使用教程

    python編寫腳本之pyautogui的安裝和使用教程

    pyautogui一個神奇的圖像自動化庫,學(xué)會之后無所不能,下面這篇文章主要給大家介紹了關(guān)于python編寫腳本之pyautogui的安裝和使用的相關(guān)資料,需要的朋友可以參考下
    2021-12-12
  • Eclipse中Python開發(fā)環(huán)境搭建簡單教程

    Eclipse中Python開發(fā)環(huán)境搭建簡單教程

    這篇文章主要為大家分享了Eclipse中Python開發(fā)環(huán)境搭建簡單教程,步驟簡潔,一目了然,可以幫助大家快速搭建python開發(fā)環(huán)境,感興趣的小伙伴們可以參考一下
    2016-03-03
  • python3操作redis實現(xiàn)List列表實例

    python3操作redis實現(xiàn)List列表實例

    本文主要介紹了python3操作redis實現(xiàn)List列表實例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • 新手入門Python編程的8個實用建議

    新手入門Python編程的8個實用建議

    這篇文章主要介紹了Python編程的8個實用建議,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • Python selenium爬蟲實現(xiàn)定時任務(wù)過程解析

    Python selenium爬蟲實現(xiàn)定時任務(wù)過程解析

    這篇文章主要介紹了Python selenium爬蟲實現(xiàn)定時任務(wù)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06

最新評論

舟山市| 兰州市| 黑山县| 历史| 宁安市| 天长市| 乃东县| 安国市| 精河县| 南昌市| 岳西县| 东兴市| 内江市| 美姑县| 余江县| 广安市| 福鼎市| 安泽县| 慈利县| 巫溪县| 电白县| 柏乡县| 原平市| 旌德县| 抚顺市| 盖州市| 屏东市| 余姚市| 四子王旗| 岑溪市| 马山县| 桐柏县| 天峨县| 天津市| 策勒县| 上蔡县| 新源县| 醴陵市| 大庆市| 边坝县| 永宁县|