国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

[零基礎(chǔ)學(xué)Python]集合的關(guān)系

EdwardUp / 1703人閱讀

摘要:凍結(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 "", 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"])
集合運(yùn)算

先復(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

相關(guān)文章

  • [基礎(chǔ)學(xué)python]重回函數(shù)

    摘要:函數(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)...

    dmlllll 評論0 收藏0
  • [基礎(chǔ)學(xué)Python]正規(guī)地說一句話

    摘要:語句,遍列列表字符串字典集合等迭代器,依次處理迭代器中的每個(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)然...

    Freeman 評論0 收藏0
  • [基礎(chǔ)學(xué)python]用Python操作數(shù)據(jù)庫(1)

    摘要:操作數(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ù)僅僅是空架子,沒有什么可操作的,要操作它,就必...

    lolomaco 評論0 收藏0
  • [基礎(chǔ)學(xué)Python]一二三,集合

    摘要:最簡單的說法,即是在最原始的集合論樸素集合論中的定義,集合就是一堆東西。若然是集合的元素,記作。這里對被數(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)以后還出別...

    CastlePeaK 評論0 收藏0
  • [基礎(chǔ)學(xué)python]網(wǎng)站結(jié)構(gòu)

    摘要:年,甲骨文公司收購升陽微系統(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è)名字電腦逐漸被人們接收了,特別...

    AlexTuan 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<