字典也如現實生活中的字典一樣,使用詞-語義進行資料的構建,其中詞對應鍵(key),詞義對應值(value),即鍵與值構成某種關係,通常將兩者稱為鍵值對,這樣通過鍵可以快速找到對應的值。
字典是由元素構成的,其中每個元素都是乙個鍵值對
因為字典是通過鍵來索引值的,所以鍵必須是唯一的,而值並不唯一
如果字典中存在相同鍵的元素,那麼只會保留後面的元素。另外,鍵不能是可變資料型別,如列表,而值可以是任意資料型別
字典具有以下特徵:
字典中的元素是以鍵值對的形式出現的。
鍵不能重複,而值可以重複。
鍵是不可變資料型別,而值可以是任意資料型別
字典的建立
字典中值可以取任何資料型別,但鍵必須是不可修改的
還可以使用dict()來建立字典
dict()還可以通過設定關鍵字引數建立字典
**計算元素個數
字典中元素個數可以通過len()函式來獲取
執行結果
訪問元素值
列表與元組是通過下標索引訪問元素值,而字典是通過元素的鍵來訪問值
有時不確定字典中是否存在某個鍵而又想訪問該鍵對應的值,則可以通過get()函式實現
執行結果
修改元素值
字典中除了通過鍵訪問值外,還可以通過鍵修改值
執行結果
新增元素
通過鍵修改值時,如果鍵不存在,則會在字典中新增該鍵值對
此外,還可以通過update()函式修改某鍵對應的值或新增元素
執行結果
刪除元素
刪除字典中的元素可以通過「del 字典名[鍵]」實現
如果想刪除字典中所有元素,則可以使用clear()實現
注意使用「del 字典名」可以刪除字典,刪除後,字典就完全不存在
執行結果
複製字典
有時需要將字典複製乙份以便用於其他操作,這樣原字典資料不受影響,這時可以通過函式copy()函式來實現
執行結果
成員運算
字典中可以使用成員運算子(in、not in)來判斷某鍵是否在字典中
執行結果
設定預設鍵值對
有時需要為字典中某個鍵設定乙個預設值,則可以使用setdefault()函式
執行結果
獲取字典中的所有鍵
keys()函式可以獲取字典中所有元素的鍵
執行結果
獲取字典中的所有值
values()函式可以獲取字典中所有元素鍵所對應的值
執行結果
獲取字典中所有鍵值對
items()函式可以獲取字典中所有的鍵值對
items()函式與for迴圈結合可以遍歷字典中的鍵值對
執行結果
隨機刪除元素
popitem()函式可以隨機返回並刪除乙個元素
pop()函式可以根據指定的鍵刪除元素
執行結果
集合的概念
集合是由一組無序排列且不重複的元素組成
集合使用大括號表示,元素型別可以是數字型別、字串、元組,但不可以是列表、字典,
使用大括號建立的集合屬於可變集合,即可以新增或刪除元素。此外,還存在一種不可變集合,即不允許新增或刪除元素。
接下來演示建立這兩種集合的方法
集合的乙個重要用途是將一些資料結構中的重複元素去除
執行結果
集合的常用操作
新增元素
集合中新增元素可以使用add()和update()函式
執行結果
刪除元素
集合中刪除元素可以使用remove()和discard()函式
執行結果
集合運算
集合可以參與多種運算
接下來演示這些運算的用法
除了上述運算子外,還可以通過union()、intersection()與difference()函式實現集合的並集、交集與差集
執行結果
集合遍歷
集合可以通過for迴圈遍歷其中的元素
執行結果
字典推導與集合推導
字典推導與列表推導相似,它將推導出乙個字典
字典推導使用大括號包圍,並且需要兩個表示式,乙個生成key,乙個生成value,兩個表示式之間使用冒號分隔,結果返回字典。若通過print()列印dict1,則輸出結果為:
集合推導也與列表推導相似,只需將中括號改為大括號
集合推導將返回乙個集合。若通過print()列印set1,則輸出結果為
集合推導的用法
執行結果
字典與集合
一 字典 1 字典 於儲存具有對映關係 key value對 資料的集合。2 對於 name 張三 key就是 name key對應的value是 張三 3 乙個key value對 認為是乙個條目 entry 字典是儲存key value對的容器。二 字典類的特點 1 與陣列不同,字典靠key訪問...
字典與集合
示例 字典 example dict print example dict 77 執行結果 88 print example dict.get 55 執行結果 xx print example dict.get 2222222222 執行結果 none print example dict.get ...
字典與集合
一.字典 1 建立字典與呼叫字典 形式字典名稱 dict1 字典的建立 dict2 建立乙個空字典 dict1 k1 v1 2 dict函式的應用 dict1 dict 用dict函式創造乙個空字典 dict2 dict 1,2 2 3 用dict函式建立乙個字典,注意括號的數量,內部既可以用元組,...