Python之 更新set
阿新 • • 發佈:2017-10-27
mov 由於 一個 hide 刪除 trace 需要 報錯 針對
Python之 更新set
由於set存儲的是一組不重復的無序元素,因此,更新set主要做兩件事:
一是把新的元素添加到set中,二是把已有元素從set中刪除。
添加元素時,用set的add()方法:
>>> s = set([1, 2, 3]) >>> s.add(4) >>> print s set([1, 2, 3, 4])
如果添加的元素已經存在於set中,add()不會報錯,但是不會加進去了:
>>> s = set([1, 2, 3]) >>> s.add(3) >>> print s set([1, 2, 3])
刪除set中的元素時,用set的remove()方法:
>>> s = set([1, 2, 3, 4]) >>> s.remove(4) >>> print s set([1, 2, 3])
如果刪除的元素不存在set中,remove()會報錯:
>>> s = set([1, 2, 3]) >>> s.remove(4) Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 4
所以用add()可以直接添加,而remove()前需要判斷。
任務
針對下面的set,給定一個list,對list中的每一個元素,如果在set中,就將其刪除,如果不在set中,就添加進去。
s = set([‘Adam‘, ‘Lisa‘, ‘Paul‘]) L = [‘Adam‘, ‘Lisa‘, ‘Bart‘, ‘Paul‘]
- ?不會了怎麽辦
-
判斷元素是否在set中,使用in操作符。
參考代碼:
s = set([‘Adam‘, ‘Lisa‘, ‘Paul‘]) L = [‘Adam‘, ‘Lisa‘, ‘Bart‘, ‘Paul‘] for name in L: if name in s: s.remove(name) else: s.add(name) print s
Python之 更新set