摘要:集合在中,是基本數據類型的一種集合類型。數組是一組值,不包含重復元素。數組是可變的無序的有限的集合,其元素是唯一的不可變的。函數,清空,集合仍存在,只不過為空集合。判斷集合是否為某集合的父集返回。
set 集合
set 數組是一組key值,不包含重復元素。
set 數組是可變的、無序的、有限的集合,其元素是唯一的、不可變的。
set 數組沒有(不支持)索引和切片操作。
set有可變集合(set)和不可變集合(frozenset)兩種,其中set:可以原地修改,或者說是可變的,也可以說是 unhashable(不可哈希)的。
frozenset:是一個被“凍結”的集合,不能原地修改,是 hashable(可哈希)的。
一、set的創建 (1)直接創建 方式:將所有項(元素)放在花括號“{}”內,以逗號“,”分隔。 集合元素:集合可以有任意數量的元素,它們可以是不同的類型(例如:數字、元組、字符串等)。但是,集合不能有可變元素(例如:列表、集合或字典)。>>> a = {1,2,3,4,"a"} >>> type(a)(2)通過set()、frozenset()創建 python中,set類是在python的sets模塊中,不需要導入sets模塊可以直接創建集合。
>>>set("boy") set(["y", "b", "o"])(3)創建空的set集合
創建空集合比較特殊。
在 Python 中,空花括號“{}”用于創建空字典。要創建一個沒有任何元素的集合,使用set()函數(不要包含任何參數)。
>>> a = set() >>> a set() >>> b = {} >>> type(a),type(b) (ps:創建set例子, )
in關鍵字,判斷某key是否在set中,并返回True or False。
>>> s = set([1,2,3,2,1,3,4,5]) >>> s {1, 2, 3, 4, 5}(2)add(key)
add()方法:添加元素到set中。可以重復添加,but沒有效果,因為set中元素唯一性,會過濾重復的元素。
>>> s.add(6) >>> s {1, 2, 3, 4, 5, 6}(3)update()
update():將參數添加到set中并返回一個set,自動過濾重復元素。
update()方法既可以帶一個單參數,也可以帶一個or多個set,就好像多次調用add()。
remove(key)、discard(key)刪除指定元素。
區別:其中remove()刪除不存在的key時會返回報錯,而discard()不會。
>>> a_set = {1,2,3,6,10,15,21,28,36,45} >>> a_set {1, 2, 3, 36, 6, 10, 45, 15, 21, 28} # 并不一定是按填寫的順序 >>> a_set.discard(10) >>> a_set {1, 2, 3, 36, 6, 45, 15, 21, 28} >>> a_set.remove(21) Traceback (most recent call last): File "(5)pop()", line 1, in KeyError: 21
pop()函數不需要帶任何參數,將set中的第一個元素刪除。
>>> a_set.pop() 1 >>> a_set {2, 3, 36, 6, 45, 15, 28}(6)clear()
clear()函數,清空set,集合仍存在,只不過為空集合。
>>> a_set.clear() >>> a_set set()(7)del 刪除一個元素
語法形式:del set_name
set可以看成數學意義上的無序、無重復元素的集合,因此,兩個set可以做數學意義上的交集、并集等操作。
交集:兩個set集合之間所有的元素,操作符號為“&”或者intersection()函數;
并集:兩個set集合之間共有的元素,操作符號為“|”或者union()函數;
差集:在a集合中但不在b集合中,方法為difference()函數;
symmetric_difference():在a集合中不在b集合中 and 在b集合中不在a集合中。
>>> s1 =set([1,3,6]) >>> s & s1 # and {1, 3, 6} >>> s | s1 # or {1, 2, 3, 5, 6} >>> a_set = {1,2,3,4,5,6,7,8,9,0} >>> b_set = {1,2,3,4,5,11,12,13,14,15} >>> a_set.union(b_set) # 并集|,或者直接a_set | b_set {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15} >>> a_set.intersection(b_set) # 交集&,或者直接使用 a_set & b_set {1, 2, 3, 4, 5} >>> a_set.difference(b_set) # 差集,在a中但不在b中 {0, 6, 7, 8, 9} >>> a_set.symmetric_difference(b_set) #在a中不在b中 and 在b中不在a中 {0, 6, 7, 8, 9, 11, 12, 13, 14, 15}
issubset():判斷集合是否為某集合的子集,返回True or False。
issuperset():判斷集合是否為某集合的父集,返回True or False。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/42265.html
摘要:基礎數據類型版本分為余版本,目前同時發行。對中文支持較差,如果要在程序中使用中文字符或中文變量,則需要在源程序的第一行增加,當然別忘了將源文件保存為字符集。運算符左右兩邊都是布爾值,輸出結果也為 python 基礎數據類型 python版本分為2.0余3.0版本,目前同時發行。以后3.0版本將成為主流地址https://www.python.org/ 編輯器 自帶編輯器IDLE【可...
摘要:集合是中一種基本數據類型,它分為可變集合和不可變集合兩種。小于和大于意味著兩個集合在比較時不能相等。等于號允許非嚴格定義的子集和超集。函數的作用是判斷集合是否是集合的子集,如果是返回,否則返回。 集合set是Python中一種基本數據類型,它分為可變集合(set)和不可變集合(frozenset)兩種。類似于其他語言,集合是一個無序不重復元素集,包括創建集合set、向集合中添加元素、刪...
摘要:最簡單的說法,即是在最原始的集合論樸素集合論中的定義,集合就是一堆東西。若然是集合的元素,記作。這里對被數學家們稱為直觀的或樸素的集合論進行一個簡短而基本的介紹更詳細的分析可見樸素集合論。對集合進行嚴格的公理推導可見公理化集合論。 回顧一下已經了解的數據類型:int/str/bool/list/dict/tuple 還真的不少了. 不過,python是一個發展的語言,沒準以后還出別...
摘要:的基本數據類型中的變量不需要聲明。在里,只有一種整數類型,表示為長整型,沒有中的。字符串的截取的語法格式如下變量頭下標尾下標索引值以為開始值,為從末尾的開始位置。列表列表是中使用最頻繁的數據類型。注意構造包含或個元素的元組的特殊語法規則。 1、python3的基本數據類型 Python 中的變量不需要聲明。每個變量在使用前都必須賦值,變量賦值以后該變量才會被創建。在 Python 中,...
摘要:布爾值布爾值和布爾代數的表示完全一致,一個布爾值只有兩種值的數據類型可以通過內置的函數查詢,例如還可以用來判斷和的區別在于不會認為子類是一種父類類型。會認為子類是一種父類類型。基本功能是進行成員關系測試和刪除重復元素。 ...
閱讀 3281·2021-11-25 09:43
閱讀 2084·2021-09-22 10:02
閱讀 3311·2021-09-06 15:00
閱讀 2298·2019-08-30 15:56
閱讀 2347·2019-08-30 15:54
閱讀 3224·2019-08-30 14:14
閱讀 2258·2019-08-29 17:25
閱讀 2902·2019-08-29 17:16