您的位置:首页 > 编程语言 > Python开发

python-list、tuple、dict和set

2017-03-06 14:57 417 查看

list:有序集合[]

1、支持索引

2、支持倒序索引:-x

3、append():新增到尾部

4、insert(x,’test’):新增test到x位置,x从0开始

5、pop(x):删除x+1元素,x不填为删除最后一个

tuple:有序列表()

1、创建完后不允许修改(指向不变)

2、定义单个元素时,t=(1,),避免歧义:运算()。多个元素后面不用加,

3、tuple的元素为list时,list里的元素可以改变,从而形成“可变”的tuple

>>> t = ('a', 'b', ['A', 'B'])
>>> L = t[2]
>>> L[0] = 'X'
>>> L[1] = 'Y'
> 再看看tuple的内容:
>>> print t
('a', 'b', ['X', 'Y'])


dict:字典{key:value}

1、 d[key] 的形式来查找对应的 value(list 必须使用索引返回对应的元素,而dict使用key)

如果key不存在,会直接报错:KeyError。要避免 KeyError 发生,有两个办法:

一是先判断一下 key 是否存在,用 in 操作符:

if 'Paul' in d:
print d['Paul']


如果 ‘Paul’ 不存在,if语句判断为False,自然不会执行 print d[‘Paul’] ,从而避免了错误。

二是使用dict本身提供的一个 get 方法,在Key不存在的时候,返回None:

print d.get('Paul')
None


2、特点:速度快、占内存、无顺序、key值不能重复不可变

3、新增:dict[key]=value

如果key存在,则替换value

set:无重复无序列的元素集合([])

1、创建 set 的方式是调用 set() 并传入一个 list,list的元素将作为set的元素:

s = set(['A', 'B', 'C'])


2、in判断元素是否在set中

3、是没有value的dict

4、add()新增元素,如果已有,不会报错也不会新增

5、remove()删除,如果没有,会报错KeyError:4,所以删除前需要判断
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: