Python學習筆記之字典

字典是無序的,格式爲:一個key對應一個value

定義

info = {
    "name": "domain",
    "age": 15,
    "job": "IT",
    "future": "cool"
}

info["sex"] = "male"  # 新增一個 key-value

del info["job"]  # 刪除指定key的鍵值對
info.pop("name")  # 刪除指定key的鍵值對
info.popitem()  # 隨機刪除鍵值對

info["future"]  # 如果不存在,報錯
info.get("age1")  # 如果不存在,返回none

print("age1" in info)  # 判斷字典中是否有key爲age1的鍵值對

info["sex"] = "female"  # 改變指定key的值

print(info)

多級嵌套

book = {

    "science":
        {
            "三體": ["大型科幻小說", 158],
            "盜墓筆記": ["古代盜墓故事", 178],
            "鬼吹燈": ["驚悚鬼故事", 58]
        },

    "romance":
        {
            "霸道總裁愛上我": ["大型科幻小說", 158],
            "霸道總裁愛上我2": ["大型科幻小說", 158],
            "霸道總裁愛上我3": ["大型科幻小說", 158],
        },

    "prose":
        {
            "草房子": ["曹文軒散文書籍", 58],
            "草房子2": ["曹文軒散文書籍", 58],
            "草房子3": ["曹文軒散文書籍", 58],
            "草房子4": ["曹文軒散文書籍", 58],
        },
}

print(book)

其他方法

得到典所有value

book.values() # 得到典所有value

得到字典所有value

book.keys() # 得到字典所有value

添加一個鍵值對

book.setdefault("game", {"英雄聯盟": ["大型網絡遊戲", 99999999999]})  # 添加一個鍵值對,有則不再添加,無則添加

print(book)

更新字典

pass_through = {                                                        #新建一個字典

    "pass_through":
        {
        "crossfire": ["大型網絡遊戲穿越火線", 99999999999]
    },
    "prose":
        {
            "草房子": ["曹文軒散文書籍", 58],
            "丫頭": ["網絡電視劇原小說", 58],
            "草房子2": ["曹文軒散文書籍", 58],
            "草房子3": ["曹文軒散文書籍", 58],
        }
}

book.update(pass_through)                                       #把剛剛新建的字典更新到之前的book字典,重複的不更新,不重複的加上
print(book)

字典轉列表

print(book.items())          #字典轉列表

c=dict.fromkeys(["name1","name2","name4"],["domain","marry","alex"])  #新建一個字典,第一個參數是所有的key,第二個參數是所有key的value,ps:改變其中一個key的value,如果value有兩層,那麼所有key的value都會改變,同列表的淺拷貝
print(c)

循環

print("循環方式一".center(30,"-"))
for i in book:
    print(i,book[i])

print("循環方式二".center(30,"-"))   #比上面方式低效,要先轉成列表,如果數據量大,運行速度會變慢
for k,v in book.items():
    print(k,v)

更多最新Python教程資源關注微信公衆號 凱撒網絡研究院,回覆 Python獲取。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章