亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

python集合是什么

python爬蟲(chóng)知識(shí)分享 ? 來(lái)源:python爬蟲(chóng)知識(shí)分享 ? 作者:python爬蟲(chóng)知識(shí)分享 ? 2022-02-23 17:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

python集合

集合(英文名 set),它是一個(gè)無(wú)序的不重復(fù)元素序列。

這里面有兩個(gè)重點(diǎn):

無(wú)序,

不重復(fù)

1. 創(chuàng)建集合

集合的創(chuàng)建有兩種方法

第一種方法:使用 花括號(hào) {} 直接創(chuàng)建,創(chuàng)建的時(shí)候,{} 可以包含有重要的元素,但是創(chuàng)建完后,集合會(huì)去重,只留第一個(gè)。

>>> aset = {"Apple", "Huawei", "Xiaomi"}
>>> aset
set(['Huawei', 'Xiaomi', 'Apple'])

第二種方法:使用 set() 方法進(jìn)行創(chuàng)建,當(dāng)set() 函數(shù)不接任何參數(shù)時(shí),創(chuàng)建的是空集合,如果不創(chuàng)建空集合,可以傳入一個(gè)列表。

>>> bset = set()  # 空集合
>>> bset
set([])
>>> cset = set(["Apple", "Huawei", "Xiaomi"])
>>> cset
set(['Huawei', 'Apple', 'Xiaomi'])

2. 增刪改查

增加元素

使用 add 函數(shù)可以往集合中傳入函數(shù)

>>> aset = set()
>>> aset
set([])
>>> aset.add("Apple")
>>> aset.add("Huawei")
>>> aset
set(['Huawei', 'Apple'])

另外,還可以使用 update 函數(shù),來(lái)往集合中添加元素,update 函數(shù)后可接集合,列表,元組,字典等。

這是接集合的例子

>>> aset = set()
>>> aset
set([])
>>>
>>> # 接集合
>>> aset.update({"Apple"})
>>> aset
set(['Apple'])
>>>
>>> # 接列表
>>> aset.update(["Huawei"])
>>> aset
set(['Huawei', 'Apple'])
>>>
>>> # 接元組
>>> aset.update(("Xiaomi",))
>>> aset
set(['Huawei', 'Apple', 'Xiaomi'])
>>>
>>> # 接字典
>>> aset.update({"VIVO": "xxxx"})
>>> aset
set(['Huawei', 'Apple', 'VIVO', 'Xiaomi'])

刪除元素

使用 remove 函數(shù)可以刪除集合中的元素

>>> aset = {"Apple", "Huawei", "Xiaomi"}
>>> aset.remove("Xiaomi")
>>> aset
set(['Huawei', 'Apple'])

使用 remove 函數(shù),如果對(duì)應(yīng)的元素不存在,是會(huì)報(bào)錯(cuò)的。

>>> aset = {"Apple", "Huawei", "Xiaomi"}
>>> aset.remove("VIVO")
Traceback (most recent call last):
  File "", line 1, in 
KeyError: 'VIVO'

對(duì)于這種情況,你可以使用 discard 函數(shù),存在元素則移除,不存在也不會(huì)報(bào)錯(cuò)。

>>> aset = {"Apple", "Huawei", "Xiaomi"}
>>> aset.discard("VIVO")
>>> aset
set(['Huawei', 'Xiaomi', 'Apple'])

此外,還有一個(gè) pop 函數(shù),用于從集合中隨機(jī)刪除元素,和列表、字典的 pop 不一樣,這里的 pop 不能加任何的參數(shù)。

>>> aset = {"Apple", "Huawei", "Xiaomi"}
>>> aset.pop()
'Huawei'
>>> aset.pop()
'Xiaomi'
>>> aset.pop()
'Apple'

最后,還要介紹一個(gè) clear 函數(shù),它用于清空集合的元素。

>>> aset = {"Apple", "Huawei", "Xiaomi"}
>>> aset
set(['Huawei', 'Xiaomi', 'Apple'])
>>> aset.clear()
>>> aset
set([])

修改元素

文章開(kāi)頭處,已經(jīng)說(shuō)明了集合是 無(wú)序 的,因此集合是沒(méi)有索引的。

既然沒(méi)有索引,修改也無(wú)從談起。

記住:集合只有添加元素、刪除元素。

查詢?cè)?/strong>

同上,沒(méi)有順序,也就沒(méi)有索引,沒(méi)有索引,查詢也無(wú)從談起。

但是我們可以查看集合的其他內(nèi)容

比如,查看集合的長(zhǎng)度

>>> aset = {"Apple", "Huawei", "Xiaomi"}
>>> len(aset)
3

3. 集合運(yùn)算

求合集

將兩個(gè)集合進(jìn)行合并并去重,可以使用 union 函數(shù),下面的示例中,由于 Huawei 是重復(fù)的元素,只會(huì)保留一個(gè)。

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset.union(bset)
set(['Huawei', 'Apple', 'Xiaomi'])

另外還可以使用 | 的操作符

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset | bset
set(['Huawei', 'Apple', 'Xiaomi'])

求差集

要找出存在集合 A 但是不存在 集合 B 的元素,就是對(duì)兩個(gè)集合求差集。

可以使用 difference 函數(shù),下面的示例中, Apple 在 aset 中存在,但在 bset 中不存在。

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset.difference(bset)
set(['Apple'])

另外還可以使用 - 的操作符,更加直觀

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset - bset
set(['Apple'])

求交集

要找出存在集合 A 并且存在集合 B 的元素,就是對(duì)兩個(gè)集合求交集。

可以使用 intersection 函數(shù)

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset.intersection(bset)
set(['Huawei'])
>>>

intersection 相似的還有一個(gè) intersection_update 函數(shù),它們的區(qū)別是,intersection_update 會(huì)原地更新在 aset 上,而不是會(huì)回交集。

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset.intersection_update(bset)
>>> aset
set(['Huawei'])

另外還可以使用 & 的操作符

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset & bset
set(['Huawei'])

求不重合集

如果計(jì)算兩個(gè)集合中不重復(fù)的元素集合,可以使用 symmetric_difference 函數(shù)

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset.symmetric_difference(bset)
set(['Xiaomi', 'Apple'])

symmetric_difference 相似的還有一個(gè) symmetric_difference_update 函數(shù),它們的區(qū)別是,symmetric_difference_update 會(huì)原地更新在 aset 上,而不是直接返回。

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset.symmetric_difference_update(bset)
>>> aset
set(['Apple', 'Xiaomi'])

4. 集合判斷

判斷是否有某元素

>>> aset = {"Apple", "Huawei"}
>>> "Apple" in aset
True

判斷兩集合是否有相同元素

如果兩集合有相同元素,則返回 False,如果沒(méi)有相同元素,則返回 True

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Xiaomi", "Huawei"}
>>> aset.isdisjoint(bset)
False

判斷是否是子集

>>> aset = {"Apple", "Huawei"}
>>> bset = {"Huawei"}
>>> bset.issubset(aset)
True

審核編輯:符乾江
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 集合
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    8240
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4850

    瀏覽量

    89309
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    ??FourCastNet 3實(shí)現(xiàn)快速精準(zhǔn)的大型集合天氣預(yù)報(bào)

    FourCastNet 3(FCN3)是 NVIDIA Earth-2 中最新的 AI 全球天氣預(yù)報(bào)系統(tǒng)。FCN3 首次完美地結(jié)合了概率預(yù)測(cè)能力、計(jì)算效率、頻譜保真度、集合校準(zhǔn)和次季節(jié)
    的頭像 發(fā)表于 08-30 15:49 ?1697次閱讀

    termux如何搭建python游戲

    termux如何搭建python游戲 Termux搭建Python游戲開(kāi)發(fā)環(huán)境的完整指南 一、Termux基礎(chǔ)環(huán)境準(zhǔn)備 Termux是一款無(wú)需root即可在安卓設(shè)備上運(yùn)行的Linux終端
    發(fā)表于 08-29 07:06

    python app不能運(yùn)行怎么解決?

    ;python_agent[1241]: xmlrpc request method supervisor.stopProcess failed;python_agent[1241]: xmlrpc request method supervisor.stopProces
    發(fā)表于 08-06 06:27

    基礎(chǔ)篇3:掌握Python中的條件語(yǔ)句與循環(huán)

    Python編程語(yǔ)言中,條件語(yǔ)句和循環(huán)是構(gòu)成復(fù)雜邏輯和數(shù)據(jù)處理的基石。本篇基礎(chǔ)教程將幫助您深入了解Python中的條件語(yǔ)句和循環(huán)結(jié)構(gòu),讓您能夠更好地控制程序流程。 條件語(yǔ)句 條件語(yǔ)句允許程序根據(jù)
    發(fā)表于 07-03 16:13

    DLP4710EVM-LC燒入條紋集合,相機(jī)同步拍照時(shí)出現(xiàn)錯(cuò)誤

    如圖所示,我將條紋圖寫(xiě)入投影儀用于投影,當(dāng)只有一個(gè)條紋集合時(shí)投影正常,因?yàn)橐粋€(gè)集合最多投影7張圖片,而我需要投影22張; 當(dāng)設(shè)置的條紋集合超過(guò)一個(gè)時(shí),點(diǎn)擊連續(xù)投影,相機(jī)同步拍照時(shí)出現(xiàn)圖片中的的現(xiàn)象
    發(fā)表于 06-28 15:36

    如何破解GPU集群集合通信路徑的“黑盒”難題?

    集合通信庫(kù)(如NCCL、HCCL)的運(yùn)行細(xì)節(jié)用戶完全無(wú)感知,形成“黑盒”狀態(tài)。EPS通過(guò)實(shí)時(shí)解析集合通信庫(kù)的底層運(yùn)行狀態(tài),將隱蔽的通信路徑、GPU與網(wǎng)卡狀態(tài)等信息可視化,并提供智能路由推薦,幫助用戶快速優(yōu)化集群性能。
    的頭像 發(fā)表于 05-22 10:13 ?613次閱讀
    如何破解GPU集群<b class='flag-5'>集合</b>通信路徑的“黑盒”難題?

    零基礎(chǔ)入門:如何在樹(shù)莓派上編寫(xiě)和運(yùn)行Python程序?

    在這篇文章中,我將為你簡(jiǎn)要介紹Python程序是什么、Python程序可以用來(lái)做什么,以及如何在RaspberryPi上編寫(xiě)和運(yùn)行一個(gè)簡(jiǎn)單的Python程序。什么是Python程序?
    的頭像 發(fā)表于 03-25 09:27 ?1356次閱讀
    零基礎(chǔ)入門:如何在樹(shù)莓派上編寫(xiě)和運(yùn)行<b class='flag-5'>Python</b>程序?

    DLP4710EVM-LC兩個(gè)條紋集合投影沖突怎么解決?

    如圖所示,我將條紋圖寫(xiě)入投影儀用于投影,當(dāng)只有一個(gè)條紋集合時(shí)投影正常,因?yàn)橐粋€(gè)集合最多投影7張圖片,而我需要投影22張; 當(dāng)設(shè)置的條紋集合超過(guò)一個(gè)時(shí),點(diǎn)擊連續(xù)投影,投影儀投影的圖片就會(huì)出現(xiàn)一閃而過(guò)的情況,并且即使按了暫停也沒(méi)有
    發(fā)表于 02-19 08:36

    Python繪圖Matplotlib快速參考手冊(cè)

    ?PYTHON
    發(fā)表于 02-07 14:04 ?0次下載

    Python Connector for InterBase連接解決方案

    適用于 InterBase 的 Python 連接器 Python Connector for InterBase 是一種可靠的連接解決方案,用于從 Python 應(yīng)用程序訪問(wèn) InterBase
    的頭像 發(fā)表于 01-22 14:34 ?634次閱讀

    使用Python實(shí)現(xiàn)xgboost教程

    使用Python實(shí)現(xiàn)XGBoost模型通常涉及以下幾個(gè)步驟:數(shù)據(jù)準(zhǔn)備、模型訓(xùn)練、模型評(píng)估和模型預(yù)測(cè)。以下是一個(gè)詳細(xì)的教程,指導(dǎo)你如何在Python中使用XGBoost。 1. 安裝XGBoost
    的頭像 發(fā)表于 01-19 11:21 ?2040次閱讀

    AN42-基準(zhǔn)電壓源電路集合

    電子發(fā)燒友網(wǎng)站提供《AN42-基準(zhǔn)電壓源電路集合.pdf》資料免費(fèi)下載
    發(fā)表于 01-08 14:33 ?23次下載
    AN42-基準(zhǔn)電壓源電路<b class='flag-5'>集合</b>

    Java集合API的改進(jìn)介紹

    簡(jiǎn)介 本文我們將探討不同 jdk 版本中各類的起源,以及新引入的類和接口背后的目的。我們將分析之前版本存在的問(wèn)題,以及為何需要引入新的類或接口。此外,我們還將介紹集合類和接口中的新特性。文章將逐一
    的頭像 發(fā)表于 11-22 11:12 ?820次閱讀
    Java<b class='flag-5'>集合</b>API的改進(jìn)介紹

    使用Python進(jìn)行串口通信的案例

    當(dāng)然!以下是一個(gè)使用Python進(jìn)行串口通信的簡(jiǎn)單示例。這個(gè)示例展示了如何配置串口、發(fā)送數(shù)據(jù)以及接收數(shù)據(jù)。我們將使用 pyserial 庫(kù),這是一個(gè)非常流行的用于串口通信的Python庫(kù)。 首先,你
    的頭像 發(fā)表于 11-22 09:11 ?2243次閱讀

    使用Python進(jìn)行圖像處理

    下面是一個(gè)關(guān)于使用Python在幾行代碼中分析城市輪廓線的快速教程。
    的頭像 發(fā)表于 11-07 10:14 ?808次閱讀
    使用<b class='flag-5'>Python</b>進(jìn)行圖像處理