python语法---可变集合常用操作

update方法

-A.update(集合)

>>> s1
{1, 2, 3}
>>> s2
{4, 5, 6}
>>> A.update(s2)
>>> A

{1, 2, 3, 4, 5, 6}


add 方法,集合中添加一个新的 元素,如果元素已经存在,则不添加

-A.add(对象)


>>> A
{1, 2, 3, 4, 5, 6, 12}
>>> A.add(128)
>>> A.add("zhu")
>>> A.add(tuple(s2))
>>> A

{128, 1, 2, 3, 4, 5, 6, 'zhu', (4, 5, 6), 12}


remove方法,集合中添加一个新的元素,如果元素已经存在,则不添加。

A.remove(对象)


>>> A
{128, 1, 2, 3, 4, 5, 6, 'zhu', (4, 5, 6), 12}
>>> A.remove("zhu")
>>> A
{128, 1, 2, 3, 4, 5, 6, (4, 5, 6), 12}
>>> b=A.remove(12)
>>> A
{128, 1, 2, 3, 4, 5, 6, (4, 5, 6)}
>>> b
>>> type(b)

<class 'NoneType'>


pop方法,从集合中删除一个元素,并返回该元素


>>> A
{128, 1, 2, 3, 4, 5, 6, (4, 5, 6)}
>>> b=A.pop()
>>> b
128
>>> A
{1, 2, 3, 4, 5, 6, (4, 5, 6)}
>>> b=A.pop()
>>> b
1
>>> A

{2, 3, 4, 5, 6, (4, 5, 6)}


clear方法,清空集合元素

A.clear()

>>> A
{2, 3, 4, 5, 6, (4, 5, 6)}
>>> A.clear()
>>> A
set()
>>> B
frozenset({1, 2, 3, 4})
>>> B.clear()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>

AttributeError: 'frozenset' object has no attribute 'clear'


copy方法,复制集合(浅复制)

A.copy()

>>> A={2,6,7,5,4,9}
>>> b=A.copy()
>>> b
{2, 4, 5, 6, 7, 9}
>>> b==A
True
>>> b is A
False
>>> B
frozenset({1, 2, 3, 4})
>>> c=B.copy()
>>> c

frozenset({1, 2, 3, 4})


删除集合

del 集合

>>> A
{2, 4, 5, 6, 7, 9}
>>> del A
>>> A
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'A' is not defined
>>> B
frozenset({1, 2, 3, 4})
>>> del B
>>> B
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>

NameError: name 'B' is not defined



集合推导式是用可迭的对象依次生成集合内元素的方法

语法

-{表达式 for 变量 in 可迭对象}

或{表达式 for 变量 in 可迭对象 if 条件语句}


>>> names
[1, 3, 'Name', 'Mob']
>>> s={n for n in names}
>>> s
{'Mob', 1, 3, 'Name'}
>>> s={n for n in names if n!=3}
>>> s
{1, 2, 'Mob', 'Name'}
>>> s={n for n in names if n!=2}
>>> s
{1, 'Mob', 'Name'}



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值