12.Python入门之集合

一.集合概述



字典是映射的体现,而集合是字典的表亲,大括号括起数字,但不体现映射关系,就是集合.


>>>num1 = {}

>>>type(num1)

<class'dict'>

>>>num2 = {1,2,3}

>>>type(num2)

<class 'set'>


集合关键字:唯一+大括号+无序


>>>num = {1,2,3,4,3,2,1}

>>>num

{1,2,3,4}  #清除重复数据

>>>num[2]  #error,集合无序,无法去索引集合中的某一个元素

二.集合方法


2.1.两种创建集合的方法


第一种直接用大括号括起来,第二种使用set()方法


>>>set1 = {1,2}

>>>set2 = set([1,2])

>>>set1 == set2

True


2.2.清除重复数据的两种方法


法一


>>>list1 = [1,2,3,2,0]

>>>temp = list1[:]

>>>list1.clear()

>>>for each in temp:

     if each not in list1:

          list1.append(each)


法二


>>>list1 = [1,2,3,2,0]

>>>list1 = list(set(list1)) #list()将可迭代对象转化为列表

>>>list1

[0,1,2,3]


法二注意点:在将无序的集合转化为列表时,不能保证原来列表顺序,所以法二不适用于要求列表处理前后顺序一致的情况


2.3.访问集合


无法通过索引读取,只能采用迭代方法把集合中的数据一个个读取出来


>>>set1 = {1,2,3,3,2,0}

>>>for each in set1:

     print(each,end='')

0,1,2,3

in和not in判断是否在集合中


>>>0 in set1

True

>>>'xx' not in set1

True

add()添加元素,remove()删除元素


>>>set1.add(6)

>>>set1

{0,1,2,3,6}

>>>set1.remove(2)

>>>set1

{0,1,3,6}

三.不可变集合


设置集合不能增减元素,定义为不可变集合,使用frozenset()函数


>>>set1 = frozenset({1,2,3})

>>>set1.add(6)  #error,增添元素时报错






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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值