摘要:凍結(jié)的集合前面一節(jié)講述了集合的基本概念,注意,那里所涉及到的集合都是可原處修改的集合。元素與集合的關(guān)系元素是否屬于某個(gè)集合。
凍結(jié)的集合
前面一節(jié)講述了集合的基本概念,注意,那里所涉及到的集合都是可原處修改的集合。還有一種集合,不能在原處修改。這種集合的創(chuàng)建方法是:
>>> f_set = frozenset("qiwsir") #看這個(gè)名字就知道了frozen,凍結(jié)的set >>> f_set frozenset(["q", "i", "s", "r", "w"]) >>> f_set.add("python") #報(bào)錯(cuò) Traceback (most recent call last): File "集合運(yùn)算", line 1, in AttributeError: "frozenset" object has no attribute "add" >>> a_set = set("github") #對比看一看,這是一個(gè)可以原處修改的set >>> a_set set(["b", "g", "i", "h", "u", "t"]) >>> a_set.add("python") >>> a_set set(["b", "g", "i", "h", "python", "u", "t"])
先復(fù)習(xí)一下中學(xué)數(shù)學(xué)(準(zhǔn)確說是高中數(shù)學(xué)中的一點(diǎn)知識)中關(guān)于集合的一點(diǎn)知識,主要是喚起那痛苦而青澀美麗的回憶吧,至少對我是。
元素與集合的關(guān)系元素是否屬于某個(gè)集合。
>>> aset set(["h", "o", "n", "p", "t", "y"]) >>> "a" in aset False >>> "h" in aset True集合與集合的糾結(jié)
假設(shè)兩個(gè)集合A、B
A是否等于B,即兩個(gè)集合的元素完全一樣
在交互模式下實(shí)驗(yàn)
>>> a set(["q", "i", "s", "r", "w"]) >>> b set(["a", "q", "i", "l", "o"]) >>> a == b False >>> a != b True
A是否是B的子集,或者反過來,B是否是A的超集。即A的元素也都是B的元素,但是B的元素比A的元素?cái)?shù)量多。
實(shí)驗(yàn)一下
>>> a set(["q", "i", "s", "r", "w"]) >>> c set(["q", "i"]) >>> c>> c.issubset(a) #或者用這種方法,判斷c是否是a的子集 True >>> a.issuperset(c) #判斷a是否是c的超集 True >>> b set(["a", "q", "i", "l", "o"]) >>> a>> a.issubset(b) #或者這樣做 False
A、B的并集,即A、B所有元素,如下圖所示
>>> a set(["q", "i", "s", "r", "w"]) >>> b set(["a", "q", "i", "l", "o"]) >>> a | b #可以有兩種方式,結(jié)果一樣 set(["a", "i", "l", "o", "q", "s", "r", "w"]) >>> a.union(b) set(["a", "i", "l", "o", "q", "s", "r", "w"])
A、B的交集,即A、B所公有的元素,如下圖所示
>>> a set(["q", "i", "s", "r", "w"]) >>> b set(["a", "q", "i", "l", "o"]) >>> a & b #兩種方式,等價(jià) set(["q", "i"]) >>> a.intersection(b) set(["q", "i"])
我在實(shí)驗(yàn)的時(shí)候,順手敲了下面的代碼,出現(xiàn)的結(jié)果如下,看官能解釋一下嗎?(思考題)
>>> a and b set(["a", "q", "i", "l", "o"])
A相對B的差(補(bǔ)),即A相對B不同的部分元素,如下圖所示
>>> a set(["q", "i", "s", "r", "w"]) >>> b set(["a", "q", "i", "l", "o"]) >>> a - b set(["s", "r", "w"]) >>> a.difference(b) set(["s", "r", "w"])
-A、B的對稱差集,如下圖所示
>>> a set(["q", "i", "s", "r", "w"]) >>> b set(["a", "q", "i", "l", "o"]) >>> a.symmetric_difference(b) set(["a", "l", "o", "s", "r", "w"])
以上是集合的基本運(yùn)算。在編程中,如果用到,可以用前面說的方法查找。不用死記硬背。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/37343.html
摘要:函數(shù)的基本結(jié)構(gòu)中的函數(shù)基本結(jié)構(gòu)函數(shù)名參數(shù)列表語句幾點(diǎn)說明函數(shù)名的命名規(guī)則要符合中的命名要求。在中,將這種依賴關(guān)系,稱之為多態(tài)。不要期待在原處修改的函數(shù)會返回結(jié)果比如一定要之用括號調(diào)用函數(shù)不要在導(dǎo)入和重載中使用擴(kuò)展名或路徑。 在本教程的開始部分,就已經(jīng)引入了函數(shù)的概念:《永遠(yuǎn)強(qiáng)大的函數(shù)》,之所以那時(shí)候就提到函數(shù),是因?yàn)槲矣X得函數(shù)之重要,遠(yuǎn)遠(yuǎn)超過一般。這里,重回函數(shù),一是復(fù)習(xí),二是要在已經(jīng)...
摘要:語句,遍列列表字符串字典集合等迭代器,依次處理迭代器中的每個(gè)元素。與配合使用處理在程序運(yùn)行中出現(xiàn)的異常情況。表示此行為空,不運(yùn)行任何操作。在迭代器函數(shù)內(nèi)使用,用于返回一個(gè)元素。恭請到上瀏覽及時(shí)更新的教程零基礎(chǔ)學(xué) 小孩子剛剛開始學(xué)說話的時(shí)候,常常是一個(gè)字一個(gè)字地開始學(xué),比如學(xué)說餃子,對他/她來講,似乎有點(diǎn)難度,大人也聰明,于是就簡化了,用餃餃來代替,其實(shí)就是讓孩子學(xué)會一個(gè)字就能表達(dá)。當(dāng)然...
摘要:操作數(shù)據(jù)庫要對數(shù)據(jù)庫進(jìn)行操作,需要先連接它。執(zhí)行后返回值為受影響的行數(shù)。執(zhí)行單條語句但是重復(fù)執(zhí)行參數(shù)列表里的參數(shù)返回值為受影響的行數(shù)例如,要在數(shù)據(jù)表中插入一條記錄,使得,這樣做沒有報(bào)錯(cuò),并且返回一個(gè)結(jié)果,說明有一行記錄操作成功。 在上一講中已經(jīng)連接了數(shù)據(jù)庫。就數(shù)據(jù)庫而言,連接之后就要對其操作。但是,目前那個(gè)名字叫做qiwsirtest的數(shù)據(jù)僅僅是空架子,沒有什么可操作的,要操作它,就必...
摘要:最簡單的說法,即是在最原始的集合論樸素集合論中的定義,集合就是一堆東西。若然是集合的元素,記作。這里對被數(shù)學(xué)家們稱為直觀的或樸素的集合論進(jìn)行一個(gè)簡短而基本的介紹更詳細(xì)的分析可見樸素集合論。對集合進(jìn)行嚴(yán)格的公理推導(dǎo)可見公理化集合論。 回顧一下已經(jīng)了解的數(shù)據(jù)類型:int/str/bool/list/dict/tuple 還真的不少了. 不過,python是一個(gè)發(fā)展的語言,沒準(zhǔn)以后還出別...
摘要:年,甲骨文公司收購升陽微系統(tǒng)公司,成為旗下產(chǎn)品。隨著的不斷成熟,它也逐漸用于更多大規(guī)模網(wǎng)站和應(yīng)用,比如維基百科和等網(wǎng)站。例如維基百科已于年正式宣布將從遷移到數(shù)據(jù)庫。 很早很早的時(shí)候,computer這個(gè)東西習(xí)慣于被稱之為計(jì)算機(jī),因?yàn)樗闹饕δ苁峭瓿梢恍┛茖W(xué)計(jì)算的東西,我記得自己鼓搗它的時(shí)候,就是計(jì)算,根本就沒有想到它有早一日還可以用來做別的。后來另外一個(gè)名字電腦逐漸被人們接收了,特別...
閱讀 2883·2021-09-22 15:20
閱讀 2958·2021-09-22 15:19
閱讀 3448·2021-09-22 15:15
閱讀 2382·2021-09-08 09:35
閱讀 2373·2019-08-30 15:44
閱讀 3004·2019-08-30 10:50
閱讀 3707·2019-08-29 16:25
閱讀 1586·2019-08-26 13:55