首页 > 代码库 > dict 、set 详解
dict 、set 详解
创建个子字典 用大括号 {}
字典是包括 key 和value
d = {
‘Adam‘: 95,
‘Lisa‘: 85,
‘Bart‘: 59
}
print ‘Adam:‘,d.get(‘Adam‘)
print ‘Lisa:‘,d.get(‘Lisa‘)
print ‘Bart:‘,d.get(‘Bart‘)
.get 是在查询字典时,如果查询的key不存在,值返回None,防止查询的key不存在而报错。
往字典中添加数据时使用 dict[key]=value;去创建
d = {
95: ‘Adam‘,
85: ‘Lisa‘,
59: ‘Bart‘
}
d[72]=‘Paul‘
1、字典是查找数据速度快,但是占用内存大;list正好相反,占用内存小,查找速度慢;字典的查找是用过key来查找的,所有dict的key不能重复,内容也是无序的;字典中可以再存放字典、list、str
2、字典的key 元素必须是不可以变化的,因为查找是通过key来查找;python 的基础数据类型如 字符串、整型、浮点型 都是不可变的,都可以做key,list是可变的不能作为key来使用;tuple 是不可以变化的,也可以作为dict的key
3、for 循环可以遍历list,同样也可以遍历dict;for 遍历dict的key,可以根据遍历的key,查找出对应value;
d = {
‘Adam‘: 95,
‘Lisa‘: 85,
‘Bart‘: 59
}
for i in d :
print i ,‘:‘,d[i]
4、set ;什么是set ,set类似于dict的key;set是持有一系列元素,元素中没有重复,而且也是无序的
创建set的方式是调用set()函数并传入一个list,list的元素将做为set的元素
setpr=set([‘a‘,‘b‘,‘c‘])
print setpr
5、set 是不包含重复元素;当有重复元素时候,可使用set去掉list中的重复元素
6、set的内部结构和dict很像,但是set不存储value,因此判断一个元素是否存在在set中速度很快
7、set 也是可以for 遍历
s = set([(‘Adam‘, 95), (‘Lisa‘, 85), (‘Bart‘, 59)])
for x in s:
print x[0],‘:‘,x[1]
8、set 中添加、删除 元素
set 的add()方法;如果set中存在元素,不会报错,也不会添加进去
s=set([1,2,3])
s.add(4)
print s
set 的removre()方法
s=set([1,2,3,4])
s.remove(4)
s = set([‘Adam‘, ‘Lisa‘, ‘Paul‘])
L = [‘Adam‘, ‘Lisa‘, ‘Bart‘, ‘Paul‘]
for i in L:
if i in s :
s.remove(i)
else:
s.add(i)
print s
dict 、set 详解