添加元素的两种方式
1)add() 一次添加一个元素
语法格式:set_name.add(element)
参数说明:element —-> 要添加的元素。
方法说明:将指定元素添加到集合中,如果该元素已经存在,则不添加该元素(集合有去重复功能)。无返回值。
s = {10,50,'hello','python',100}
print('原集合:',id(s),s) # 原集合: 1637755659744 {'python', 50, 100, 10, 'hello'}
s.add(9999)
print('添加9999后的集合:',id(s),s) # 添加9999后的集合: 1637755659744 {'python', 50, 100, 10, 'hello', 9999}
# 列表中的元素不能重复
s.add(10)
print('添加10后的集合:',id(s),s) # 添加10后的集合: 1637755659744 {'python', 50, 100, 10, 'hello', 9999}
add() 方法一次只能添加一个元素,如果添加一个可迭代对象,这个可迭代对象会被当做是一个元素添加进集合中。
2)update() 一次添加至少一个元素
语法格式:set_update(iterable)
参数说明:iterable —-> 可迭代对象。
方法说明:将一个或多个可迭代对象添加到集合中,可以是列表、元组、集合、字典、字符串。重复的元素只会出现一次。
返回值:返回集合与可迭代对象的并集。
s = {10,50,'hello','python',100}
print('原集合:',s) # 原集合: {50, 100, 'hello', 10, 'python'}
s.update({888,'world',123,100})
print(s) # {100, 10, 'python', 50, 'world', 888, 'hello', 123}
# 将字符串拆成一个个字符添加进去
s.update('java')
print(s) # {'v', 100, 10, 'python', 'j', 50, 'world', 888, 'hello', 123, 'a'}
add()和update()的区别:
add()一次只能添加一个元素,update()一次可以添加多个元素,比喻说
s = {10,50,'hello','python',100}
print('原集合:',s) # 原集合: {'python', 50, 'hello', 100, 10}
# add():把元组看成是一个元素,添加到集合中
s.add((99,22))
print('add()添加后的集合:',s) # add()添加后的集合: {'python', (99, 22), 50, 'hello', 100, 10}
s1 = {10,50,'hello','python',100}
# update():将元组中的每一个元素添加到集合中
s1.update((99,22))
print('update()添加后的集合:',s1) # update()添加后的集合: {'python', 50, 'hello', 100, 99, 22, 10}
删除元素的五种方式
1)remove()
语法格式:set_name.remove(element)
参数说明:
element:要被删除的元素。
方法说明:一次删除一个指定的元素,如果元素不存在则抛出异常KeyError。无返回值。
s = {10,50,'hello','python',100}
print('原集合:',s) # 原集合: {50, 100, 'python', 10, 'hello'}
s.remove(100)
print('remove后的集合:',s) # remove后的集合: {50, 'python', 10, 'hello'}
指定要删除的元素不存在,则抛出异常 KeyError。
s = {10,50,'hello','python',100}
# 99不存在,无法删除,抛出异常KeyError
s.remove(99) # KeyError: 99
2)discard()
语法格式:set_name.discard(element)
参数说明:
element:要被删除的元素。
方法说明:一次删除一个指定的元素,如果元素不存在也不会抛出异常。无返回值。
s = {10,50,'hello','python',100}
print('原集合:',s) # 原集合: {50, 100, 'python', 10, 'hello'}
s.discard('hello')
print('discard后的集合:',s) # discard后的集合: {50, 100, 'python', 10}
# 'world'不存在,但不会抛出异常
s.discard('world')
remove() 和 discard() 的区别:
remove():删除集合中指定的元素,如果指定元素不存在,会抛出异常KeyError。
discard():删除集合中指定的元素,如果指定元素不存在,也不会抛出异常。
3)pop()
语法格式:set_name.pop()
参数说明:无参,因为集合是无序的,所以pop()无法指定参数。
返回值:返回被删除的元素。
方法说明:一次删除一个任意元素。
s = {10,50,'hello','python',100}
print('原集合:',s)
# 返回被删除的那个元素
result = s.pop() # 无参
print(f'被删除的元素是{result}')
print('pop()后的集合:',s)
4)clear()
语法格式:set_name.clear()
参数说明:无参。
方法说明:清空集合中的元素,集合的对象还在。无返回值。
s = {10,50,'hello','python',100}
print('原集合:',s,id(s))
s.clear()
print('clear后的集合:',s,id(s))
5)del
语法格式:del set_name
方法说明:清空集合中的所有元素,并彻底删除集合对象。
s = {10,50,'hello','python',100}
del s
print(s) # NameError: name 's' is not defined. Did you mean: 's1'?
清空集合元素的三种方式
1)set_name.clear():清除集合中所有元素。集合对象还在。
2)del set_name:清空集合元素,并删除集合对象。
3)s = {}:使用空集合重新赋值,集合元素没了,集合对象还在。
1 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
2 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报。
3 本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
暂无评论内容