Python集合中remove()函數(shù)的使用方法詳解
remove() 可以「刪除」集合中的指定「元素」
語法
set.remove( element )
參數(shù)
- element :(必選)需要刪除的元素
返回值
- None,沒有返回值,只修改原數(shù)組。
實例:刪除集合中的指定元素
set1 = {1, 2, 3, 4, 5}
set1.remove(2)
print(set1)輸出:
{1, 3, 4, 5}
從偽源碼(Python的內(nèi)置函數(shù)看不到源碼,只能看到函數(shù)的描述)中可以看到, remove() 可以「刪除」一個元素;但這個元素必須「存在」,不存在就會報錯 KeyError

1、刪除多個元素
remove() 只接收「一個參數(shù)」,這意味著一次只能刪除「一個元素」;刪除多個元素會報錯 TypeError: remove() takes exactly one argument
set1.remove(1, 2)

不過,我們可以配合「循環(huán)」,刪除集合中的“小集合”
set1 = {1, 2, 3, 4, 5, 6}
set2 = {1, 2, 3}
for i in set2:
set1.remove(i)
print(set1)輸出:
{4, 5, 6}
2、刪除不存在的元素會報錯
remove() 刪除集合中「不存在」的元素時,會報錯 KeyError
set1 = {1, 2, 3, 4, 5}
set1.remove(6)輸出:

3、刪除的元素可以是任意類型
remove() 刪除的元素可以是「任意類型」,前提是集合可以存儲這種類型,比如 整形、字符串、元組。
set1 = {1, 'str', (1, 2)}
set1.remove(1)
set1.remove('str')
set1.remove((1, 2))
print(set1)輸出:
set()
4、remove()和discard()的區(qū)別?
remove() 和 discard() 用法相同,都可以刪除集合中的指定元素,但 remove() 刪除不存在的元素會報錯,而 discard() 不會報錯。
不確定集合中是否存在該元素時,使用 discard()
set1 = {1, 2, 3}
set1.discard(9)
print(set1)輸出:
{1, 2, 3}
確定集合中存在該元素時,使用 remove()
set1 = {1, 2, 3}
set1.remove(9)
print(set1)輸出:
Traceback (most recent call last):
File "C:\Users\dell\PycharmProjects\pythonProject1\test1.py", line 3, in <module>
set1.remove(9)
KeyError: 9
到此這篇關(guān)于Python集合中remove()函數(shù)的使用方法詳解的文章就介紹到這了,更多相關(guān)Python集合remove()函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于Python中的向量相加和numpy中的向量相加效率對比
今天小編就為大家分享一篇關(guān)于Python中的向量相加和numpy中的向量相加效率對比,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08
將python項目導出為docker鏡像實現(xiàn)過程
本文介紹了使用Docker將修改后的Python代碼打包為.tar.gz格式,并導入的方法,首先創(chuàng)建項目和setup.py文件,然后打包項目并創(chuàng)建Dockerfile,接著構(gòu)建并運行Docker鏡像,在容器中導入修改后的模塊,最后,說明了如何保存修改并繼續(xù)開發(fā)2026-04-04
Python OpenCV中的numpy與圖像類型轉(zhuǎn)換操作
這篇文章主要介紹了Python OpenCV中的numpy與圖像類型轉(zhuǎn)換操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12
scrapy結(jié)合selenium解析動態(tài)頁面的實現(xiàn)
這篇文章主要介紹了scrapy結(jié)合selenium解析動態(tài)頁面的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-09-09

