11集合

#集合跟字典类似,但使用不同,集合的组成只有“键”
>>> num1 = {}
>>> type(num1)
<class 'dict'>
>>> 
>>> num2 = {1, 2, 3}
>>> type(num2)
<class 'set'>
>>> 
#实例,去除列表中的重复数据
#1.常规做法
>>> num1 = [1, 2, 3, 4, 3, 1]
>>> tmp = []
>>> for x in num1:
    if x not in tmp:
        tmp.append(x)


>>> tmp
[1, 2, 3, 4]
#2.使用列表的集合功能
>>> num1 = [1, 2, 3, 4, 5, 5, 3, 1, 0]
>>> num1 = list(set(num1))
>>> num1
[0, 1, 2, 3, 4, 5]
#set(num1)为集合,再转为列表,此时的列表为无序的,如果对顺序有要求注意,原列表中的0放到了第一个位置
>>>
-----------------
#判断一个元素是否在集合中
>>> num2 = [1, 2, 3, 4, 5]
>>> 1 in num2
True
>>> "1" in num2
False
>>> num2.add(6)
Traceback (most recent call last):
  File "<pyshell#158>", line 1, in <module>
    num2.add(6)
AttributeError: 'list' object has no attribute 'add'
>>> type(num2)
<class 'list'>
#向集合中添加一个元素
>>> num3 = {1, 2, 3}
>>> num3.add(4)
>>> num3
{1, 2, 3, 4}
#从集合中删除一个元素
>>> num3.remove(2)
>>> num3
{1, 3, 4}
---------------------------------
#冻结集合,此时顺序不可以被修改,保证集合的稳定性   
>>> num4 = frozenset([1, 2, 3, 4])
>>> num4.add(0)
Traceback (most recent call last):
  File "<pyshell#174>", line 1, in <module>
    num4.add(0)
AttributeError: 'frozenset' object has no attribute 'add'
>>> 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值