首頁 > 軟體

Python資料容器dict(字典)的實現

2023-02-14 06:01:08

字典的定義

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

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

每一個鍵值對包含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資料容器字典內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com