Python數據容器dict(字典)的實現

字典的定義

使用{},不過存儲的元素是一個個的:鍵值對,如下語法:

使用{}存儲原始,每一個元素是一個鍵值對

每一個鍵值對包含Key和Value(用冒號分隔)

鍵值對之間使用逗號分隔

Key和Value可以是任意類型的數據(key不可為字典)

Key不可重復,重復會對原有數據覆蓋

字典不可用下標索引,而是通過Key檢索Value

字典數據的獲取

字典同集合一樣,不可以使用下標索引

字典可以通過Key值來取得對應的Value

my_dict={"A":100,"B":80,"C":60}
print(my_dict["A"])
print(my_dict["B"])
print(my_dict["C"])

100

80

60

字典的嵌套

字典的Key和Value可以是任意數據類型(Key不可為字典) 那麼,就表明,字典是可以嵌套的

內容獲取類似於二維數組

my_dict = {
    "sorce":{"A":77,"B":66,"C":33},
    "level":{"A":88,"B":86,"C":55},
    "grade":{"A":99,"B":96,"C":66}
}
print(my_dict["sorce"])
 
print(my_dict["sorce"]["A"])
 
print(my_dict["grade"]["C"])

{'A': 77, 'B': 66, 'C': 33}
77
66

字典的各種操作

編號

操作

說明

1

字典[Key]

獲取指定Key對應的Value值

2

字典[Key] = Value

添加或更新鍵值對

3

字典.pop(Key)

取出Key對應的Value並在字典內刪除此Key的鍵值對

4

字典.clear()

清空字典

5

字典.keys()

獲取字典的全部Key,可用於for循環遍歷字典

6

len(字典)

計算字典內的元素數量

新增與更新元素  [Key] = Value

語法:字典[Key] = Value,結果:字典被修改,新增瞭元素

註意:字典Key不可以重復,所以對已存在的Key執行上述操作,就是更新Value值

my_dict={"A":100,"B":80,"C":60}
my_dict["D"]=40#新增加內容
print(my_dict)
 
my_dict["B"]=88#更新已有內容
print(my_dict)

刪除元素 pop和del

語法:字典.pop(Key),結果:獲得指定Key的Value,同時字典被修改,指定Key的數據被刪除

del 字典[key] 為直接刪除 

my_dict={"A":100,"B":80,"C":60}
 
value=my_dict.pop("A")
print(value)
print(my_dict)
 
del my_dict["B"]
print(my_dict)

100
{'B': 80, 'C': 60}
{'C': 60}

清空字典 clear

語法:字典.clear(),結果:字典被修改,元素被清空

my_dict={"A":100,"B":80,"C":60}
 
my_dict.clear()
print(my_dict)

{}

獲取全部的鍵 keys

語法:字典.keys(),結果:得到字典中的全部Key

my_dict={"A":100,"B":80,"C":60}
 
k=my_dict.keys()
print(k)
print(my_dict)

dict_keys(['A', 'B', 'C'])
{'A': 100, 'B': 80, 'C': 60}

遍歷字典     

keys()

語法:for key in 字典.keys()

字典不支持下標索引,所以同樣不可以用while循環遍歷

my_dict={"A":100,"B":80,"C":60}
 
for key in my_dict.keys():
    print(f"等級:{key},分數:{my_dict[key]}")

等級:A,分數:100
等級:B,分數:80
等級:C,分數:60

values ()

my_dict={"A":100,"B":80,"C":60}
 
for i in my_dict.values():
    print(i)

100

80

60

items()

my_dict={"A":100,"B":80,"C":60}
 
for i in my_dict.items():
    print(i)
 
print(type(i))
print(type(my_dict.items()))

('A', 100)
('B', 80)
('C', 60)
<class 'tuple'>
<class 'dict_items'>

利用items依次打印key和value

my_dict={"A":100,"B":80,"C":60}
 
#4.依次打印key和value,通過索引
for key,value in my_dict.items():
    print(key,value)

A 100
B 80
C 60

容器通用功能總覽

功能

描述

通用for循環

遍歷容器(字典是遍歷key)

max

容器內最大元素

min()

容器內最小元素

len()

容器元素個數

list()

轉換為列表

tuple()

轉換為元組

str()

轉換為字符串

set()

轉換為集合

sorted(序列, [reverse=True])

排序,reverse=True表示降序

得到一個排好序的列表

到此這篇關於Python數據容器dict(字典)的實現的文章就介紹到這瞭,更多相關Python數據容器字典內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: