1,字典的定义:字典是python中唯一内建的映射类型,字典指定值并没有特殊顺序,都存储在一个特殊的键(key)中,键可以使数字也可以是字符串或元组。字典是另一种可变容器模型,可存储任意类型对象。
2,字典的创建
eg:
d={key1:value1,key2:value2}
3,字典的特点
无序、没有下标
可为空
键不可重复、值可以重复
4,dict函数---就是将元组列表转换为字典
eg:
>>>student=[('name','小梦'),('number','1001')]
>>>dictail=dict(student)
>>>print dictail
{'name':'小梦','number':1001}
5,字典的基本操作
1)修改字典
向字典添加新内容的方法是增加新键/值对,修改或删除已有键/值对
eg:
>>>student={'小萌':10001,'小志':10002,'小强':10003}
>>>student['小强']='10005' #修改小强的信息
>>>print student
'小萌':10001,'小志':10002,'小强':10005
>>>student['张三']='10006' #添加一个学生信息
>>>print student
'小萌':10001,'小志':10002,'小强':10005,'张三':10006
2)删除字典
eg:
>>>student={'小萌':10001,'小志':10002,'小强':10003}
>>>del student['小志'] #删除小志同学的信息
>>>print student
'小萌':10001,'小强':10003
3)字典键的特性
a,键唯一,不可出现两次。创建时如果同一个键被赋值两次,后面的值会被记住并覆盖前面的值
b,键必须不可变,可以用数字,字符串或元组充当,不能用列表,否则会报错
4)len()函数----用于计算字典元素个数,即键的总数
5)type()函数----用于判断参数的类型
6,字典和列表的区别
dict的特点是:查找和插入的速度极快,不会随着key的增加而变慢
需要占用大量内存,内存浪费太多
list的特点是:查找和插入时间随着元素的增加而增加
占用空间小,浪费内存很少
所以dict是使用空间换取时间
7,字典的方法
1)clear()-----用于删除字典内的所有项
此语法中dict代表指定字典,该方法不需要参数。该函数是一个原地操作的函数,没有任何返回值(None)
2)copy()----用于复制字典
eg:
>>>student={'小萌':10001,'小志':10002,'小强':10003}
>>>st=student.copy()
>>>print st
{'小萌':10001,'小志':10002,'小强':10003}
3)formkeys()---用于创建一个新的字典
语法:
dict.fromkeys(seq,**value) # **上面有讲到过是可省略的意思
eg:
>>>name={'小萌','小志','小强'}
>>>info=dict.formkeys(name) #未加值参数
>>>print info
{'小萌':None,'小志':None,'小强':None}
>>>sex={'女','男','男'}
>>>out=dict.formkeys(name,sex)
>>>print out
{'小萌':'女','小志':'男','小强':'男'}
4)get()----返回指定的值,如果值不在字典里,则返回默认值(None)
eg:
>>>name={'小萌':001,'小志':002,'小强':003}
>>>print name.get('小萌')
1
5)items()方法----与dict()方法的作用相反,它是将字典转换成元组
6)keys()----返回一个字典所有键
7)update()-----用于将字典中的键/值对更新到另一个字典中