我在python3.4.3(.py)脚本中使用下面的程序
number = {1,2,1,4,5,6,9}
print(number)
number.add(-5) # adding some random number to the set
number.remove(3) # in this line python reports KeyError
print(number)
number.pop()
print(number)
但当我使用其他索引时
number.remove(2) # works fine
number.remove(5) # works fine
有什么具体的原因我不能使用索引3被删除。你知道吗
^{} 不会从集合中删除索引为x的项(在Python中集合是无序的),但是具有值的元素x:
请查看remove(elem):
因此,之所以
number.remove(2)
、number.remove(5)
有效而number.remove(3)
无效,是因为2
和5
都存在于number
而3
不存在。你知道吗注意:如果您不想引发KeyError,可以使用discard(elem):
如果elem不存在,它也会从集合中删除元素,但不会引发KeyError。你知道吗
相关问题 更多 >
编程相关推荐