python的字典知识要点

1.字典dict     key : value
字典是一个无序的数据集合,print输出字典的时候,输出顺序和定义顺序不一致
可变数据类型不能作key


2.定义字典:
(1)定义一个空字典
s = {}
d = dict()
(2)定义有数据的字典
d = dict(a=1,b=2)
message = {
     'name':'tom',
     'age':18,
     'weught',1.80,
}
s = {
    'fentiao':[100,22]
     'root':[22,44]
}

 


3.特性
(1)不支持索引,切片,重复
(2)支持成员操作符(默认判断key值是否存在),for循环(默认循环遍历key值)

 

4增加或者更改
d['key']= value
d.update({'a':4,'f':3}) 如果key存在,更新value key值不存在,添加key value值
d.setdefault('a',10)    如果key存在,不做修改, key值不存在,添加key value值


5删除
d.pop('key') 弹出指定的key-value值
d.popitem()  默认弹出第一个
del d['key']  

6.修改和查看
查看字典的key
print d.keys()
查看字典的value
print d.values()
查看所有key-value
print d.items()
遍历
for k,v in d.items():
    print k,v
for k in d:
   print k,d[k]
get方法获取指定key对应的value值
如果key存在,返回对应的value值
key不存在,默认返回none,如果需要指定返回值,传值即可
print d.get('https','key not exit')

 

7.字典生成式

练习1:20个学生,分数在60~100之间,取出大于90的学生
s = {'westos'+str(i):random.randint(60,100) for i in range(20)}
print {name:score for name,score in s.items() if score > 90 }
练习2:将字典中的key和value值调换
d = {'s':10,'w':11}
print {v:k for k,v in d.items()}
练习3:大小写合并,key值最终全部为小写
d = {'A':10,'a':8,'B':7,'b':0}
print {k.lower():d.get(k.upper(),0)+d.get(k.lower(),0) for k,v in d.items()}

你可能感兴趣的:(python的字典知识要点)