簡體   English   中英

為什么在Python中使用“設置”會出錯?

[英]Why am I getting an error using 'set' in Python?

s = set('ABC')
s.add('z')
s.update('BCD')
s.remove('DEF') # error here
s -= set('DEFG')

正如其他人指出的那樣,您要刪除的set成員'DEF' 不是該集合的成員,根據docsremove被指定為“如果set中不包含elem,則會引發KeyError”。 。

如果你想“失蹤元素”是指一種無聲無=運算來代替,只是用丟棄的,而不是remove :這之間關鍵區別discardremove的集的方法,而且由於這個原因,他們都需要存在!

set.remove()的參數必須是set成員。

'DEF'不是您集合中的成員。 'D'是。

來自http://docs.python.org/library/stdtypes.html

刪除(elem)

從集合中刪除元素elem。 如果set中不包含elem,則引發KeyError。

集合中未包含“ DEF”

您是否希望將'DEF'視為元素集合

在后一種情況下,請使用s.difference_update('DEF')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM