1. 程式人生 > >【python】內建資料結構——字典

【python】內建資料結構——字典

【引言】如果保持資料有序並不重要而結構很重要,那麼可以考慮python中的另外兩種內建的無序資料結構——字典和集合。

1.字典的概念

1.python字典允許儲存一個鍵/值對集合。在字典中每個唯一鍵有一個與之關聯的值,字典可以包含多個鍵/值對。與鍵關聯的value值可以是任意資料型別:int float long list tuple set dict。
2.字典是無序而且可變的。可以把python字典想成一個兩列多行的資料結構。與列表類似,字典可以根據需要擴充套件和收縮。

2.字典的建立

與鍵關聯的value值是int型別:
在這裡插入圖片描述
與鍵關聯的value值是set型別:
在這裡插入圖片描述
與鍵關聯的value值是list型別:
在這裡插入圖片描述


與鍵關聯的value值是dict型別(字典的巢狀):
在這裡插入圖片描述
在這裡插入圖片描述
工廠函式
在這裡插入圖片描述

3.字典的特性

字典不支援索引
字典不支援切片
字典的重複和連線是無意義的,字典的key值是唯一的

成員操作符:判斷的是 某個值是否為字典的key
在這裡插入圖片描述

for迴圈:
1)遍歷字典的key值
在這裡插入圖片描述
2)遍歷字典
在這裡插入圖片描述

4.字典的增加

1)增加一個元素
a.如果key值存在,則更新對應的value值
b.如果key值不存在,則新增對應的key-value值
在這裡插入圖片描述
2)新增多個key-value值
a.如果key值存在,則更新對應的value值
b.如果key值不存在,則新增對應的key-value值
在這裡插入圖片描述
3)setdefault新增key值:
a.如果key值存在,則不做修改
b.如果key值不存在,則新增對應的key-value值
在這裡插入圖片描述

5.字典的刪除

1)del關鍵字
在這裡插入圖片描述
2)pop刪除指定的key的key-value值
a.如果key存在,刪除,並且返回刪除key對應的value值
在這裡插入圖片描述
b.如果key不存在,直接報錯
在這裡插入圖片描述
3)popitem刪除最後一個key-value
在這裡插入圖片描述

4)clear清空字典內容
在這裡插入圖片描述

6.字典的修改與檢視

檢視字典裡的key值
在這裡插入圖片描述
檢視字典裡所有的value值
在這裡插入圖片描述
字典的遍歷(2種方法)
在這裡插入圖片描述在這裡插入圖片描述

7.字典的練習

1)

 ##重複的單詞: 此處認為單詞之間以空格為分隔符, 並且不包含,和.;
     1. 使用者輸入一句英文句子;
     2. 打印出每個單詞及其重複的次數;

2)

##數字重複統計:
    1). 隨機生成1000個整數;
    2). 數字的範圍[20, 100],
    3). 升序輸出所有不同的數字及其每個數字重複的次數;

3)

# 1. 隨機生成100個卡號;
#     卡號以6102009開頭, 後面3位依次是 (001, 002, 003, 100),
# 2. 生成關於銀行卡號的字典, 預設每個卡號的初始密碼為"redhat";

# 3. 輸出卡號和密碼資訊, 格式如下:
卡號                  密碼
6102009001              000000