python自学笔记(四)python基本数据类型之元组、集合、字典

一、元组tuple

特性

1、有序集合

2、通过偏移来取数据

3、不可变对象,不能在原地修改内存,没有排序、修改等操作

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

 

二、集合:集合是没有顺序的概念,所以不能用切片和索引操作

1、创建集合:可变的set()、不可变的frozenset()

2、添加操作 add(随机插入) update(拆分插入)

3、删除 remove

4、成员关系 in、not in

5、交集(&)、并集(|)、差集(-)

例如: a = set('abcd')

    b = set('bcdef')

交集:都出现的  a & b-->set(['b','c','d'])

并集:重复出现的,只取一个 a | b -->set(['a','b','c','d','e','f'])

差集:在集合a出现的,但没在b里面出现的元素 a - b-->set(['a'])

6、set去重(列表内容元素重复)

例如:a = [1,2,3,1,3]

   set(a) -->set([1,2,3])

   集合转列表:list(set(a))-->[1,2,3]

三、字典

特点

1、无序的

2、不能用过偏移来存取,只能通过键来存取

3、可嵌套,方便我们组织多种数据结构

4、属于可变类型,支持原地修改内部的内容(与list一样)

字典 = {'key' : value} 

key:类似我们现实的钥匙,而value则是锁,一个钥匙开一把锁,组成字典的键必须是不可变的数据类型,比如数字,字符串,元组等。

info = {'a' : 1,'b' : 2}

info['a']-->1

 

1.定义方法:a = {'name':'niuniu',age':20}

2.内置方法:b = dict(name = 'niuniu',age = 22)

3.update参数是一个字典的类型,它会覆盖相同键的值,不相同的话,随机插入

info = {'city':'beijing','phone':'htc'}

info.update({'city':'tianjin'})

print info-->{'city':'tianjin','phone':'htc'}

4.删除 del、clear、pop

 del info['phone'] 删除某个元素

 del info 删除引用

 info.clear()删除字典的全部元素

 info.pop('name')返回键名对应的值(list也有pop方法 n = ['22','33'] n.pop(0) 传入的是下标,返回的是值,不传下标 默认最后一位)

 info.pop('333','ha')如果没有找到对应的键 可以返回预先设定的值

5.成员关系操作 in、has_key()后者是字典专有方法

info.has_key('aa')返回true或false

keys()返回的列表,里面都是字典的所有键

values()返回的列表,里面都是字典的所有值

items()生成一个字典的容器是元组[('age',20),('name','niuniu')]

get有返回值

info.get('name')

b = info.get('2')如果没找到返回一个类型 nonetype类型

c = info.get('2','bcd')可以预设返回值

posted @ 2015-12-11 23:22  臻牛  阅读(274)  评论(0编辑  收藏  举报