序列是以連續的整數為索引,與此不同的是,字典以"關鍵字"為索引,關鍵字可以是任意不可變型別,通常用字串或數值。
字典是 python 唯一的乙個 對映型別,字串、元組、列表屬於序列型別。
那麼如何快速判斷乙個資料型別 x 是不是可變型別的呢?兩種方法:
dict.fromkeys(seq[, value]) 用於建立乙個新字典,以序列 seq 中元素做字典的鍵,value 為字典所有鍵對應的初始值。
dict.keys()返回乙個可迭代物件,可以使用 list() 來轉換為列表。
dict.values()返回乙個迭代器,可以使用 list() 來轉換為列表,列表為字典中的所有值。
dict.items()以列表返回可遍歷的(鍵, 值) 元組陣列。
dict.get(key, default=none)返回指定鍵的值,如果值不在字典中返回預設值。
key in dict in 操作符用於判斷鍵是否存在於字典中,如果鍵在字典 dict 裡返回true,否則返回false。而not in操作符剛好相反,如果鍵在字典 dict 裡返回false,否則返回true。
dict.clear()用於刪除字典內所有元素。
dict.copy()返回乙個字典的淺複製。
sample:直接賦值和 copy 的區別
dict.pop(key[,default])刪除字典給定鍵 key 所對應的值,返回值為被刪除的值。key 值必須給出。否則,返回 default 值。
del dict[key] 刪除字典給定鍵 key 所對應的值。
dict.popitem()隨機返回並刪除字典中的一對鍵和值,如果字典已經為空,卻呼叫了此方法,就報出keyerror異常。
dict.setdefault(key, default=none)和get()方法 類似, 如果鍵不存在於字典中,將會新增鍵並將值設為預設值。
dict.update(dict2)把字典引數 dict2 的 key/value(鍵/值) 對更新到字典 dict 裡。
與dict類似,set也是一組key的集合,但不儲存value。由於key不能重複,所以,在set中,沒有重複的key。
直接把一堆元素用花括號括起來,重複元素在set中會被自動被過濾。
使用set(value)工廠函式,把列表或元組轉換成集合。
去掉列表中重複的元素
從結果發現集合的兩個特點:無序 (unordered) 和唯一 (unique)。由於 set 儲存的是無序集合,所以我們沒法通過索引來訪問,但是可以判斷乙個元素是否在集合中。
可以使用for把集合中的資料乙個個讀取出來。
可以通過in或not in判斷乙個元素是否在集合中已經存在
set.add(elmnt)用於給集合新增元素,如果新增的元素在集合中已存在,則不執行任何操作。
set.remove(item)用於移除集合中的指定元素。
set.update(set)用於修改當前集合,可以新增新的元素或集合到當前集合中,如果新增的元素在集合中已存在,則該元素只會出現一次,重複的會忽略。
由於 set 是無序和無重複元素的集合,所以兩個或多個 set 可以做數學意義上的集合操作。
set.intersection(set1, set2 …)用於返回兩個或更多集合中都包含的元素,即交集。
set.union(set1, set2…)返回兩個集合的並集,即包含了所有集合的元素,重複的元素只會出現一次。
set.difference(set) 返回集合的差集,即返回的集合元素包含在第乙個集合中,但不包含在第二個集合(方法的引數)中。
set.issubset(set)用於判斷集合的所有元素是否都包含在指定集合中,如果是則返回 true,否則返回 false。
set.issuperset(set)用於判斷指定集合的所有元素是否都包含在原始的集合中,如果是則返回 true,否則返回 false。
frozenset([iterable]) 返回乙個凍結的集合,凍結後集合不能再新增或刪除任何元素。
Python基礎 Task06 字典與集合
1 1.定義字典 字典也是乙個列表的資料結構,但是他的元素是用 鍵 值 方式配對儲存,在操作時是用鍵 key 取得值 value 的內用。定義時,是將鍵 值放在 內,字典的語法格式如下 name dict dict1 dict1 1 2.訪問字典 brand 李寧 耐克 阿迪達斯 slogan 一切...
Task06 字典與集合
集合是由不重複元素組成的無序的集。它的基本用法包括成員檢測和消除重複元素。集合物件也支援像 聯合,交集,差集,對稱差分等數 算。理解字典的最好方式,就是將它看做是乙個 鍵 值 對的集合,鍵必須是唯一的 在乙個字典中 一對花括號可以建立乙個空字典 另一種初始化字典的方式是在一對花括號裡放置一些以逗號分...
Task06 字典與集合
task06 字典與集合 一 字典 字典是另一種可變容器模型,且可儲存任意型別物件。字典的每個鍵值 key value 對用冒號 分割,每個對之間用逗號 分割,整個字典包括在花括號 中 鍵必須是唯一的,但值則不必。值可以取任何資料型別,但鍵必須是不可變的,如字串,數字或元組。二 字典的特性 a 不允...