[2016/11/30]python数据类型之元组和集合

元组特点

1.有序的集合
2.通过偏移来取数据,支持切片。(查看支持方法,只需要 dir(变量))
3.属于不可变的对象,不能在原地修改内容,没有排序,修改等操作。

“修改”方法:如果要修改,先用list把元组转成列表,再用tuple转换成list。
或者,先生成一个tuple的拷贝(如何生成?),再按上面的方法改。

那为什么有列表还要有元组呢?

元组不可变的好处。保证数据的安全,比如我们传给一个不熟悉的方法或者数据接口,
确保方法或者接口不会改变我们的数据从而导致程序问题。

集合特点

没有顺序的概念,所以不能切片or索引。

创建集合

分为set():可变的

frozenset():不可变的

如何确定一个对象是否可以迭代?dir()此对象。如果看到其中有___iter___,就说明可以迭代。

a = set('abc')//括号里必须为可迭代对象。
>>> b
set(['a','c','b'])

添加与删除操作

添加:
分add方法,update方法。
前者把整体插入,后者把其迭代分块插入。(不明白自己试试!)

删除:
remove(要删除的元素)方法。

成员关系

in , not in
判断在不在集合里
返回一个bool值

交集,并集,差集

集合a,b;
交集 : a & b
并集:a | b
差集 : a - b(只在a中出现的元素)

set对list去重

a = [1,2,3,2,3];
b = set(a)
a = list(b)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值