python dict

#!/usr/bin/env python
# --*-- encoding:utf-8 --*--
dicta = {'aaa':'bb','age':13}
#索引
print(dicta['aaa'])
#len
print(len(dicta))
#for
for i in dicta:#默认循环key
    print(i)
for i in dicta.keys():#循环key
    print(i)
for i in dicta.values():#循环value
    print(i)
for k,v in dicta.items():#循环k,v
    print(k)
    print(v)
#dict常用方法
dicta.clear()#清除所有键值对
dicta.get('aaaa','mm')#获取aaa的值,如果不存在返回mm
dicta.has_key('aaaa')#判断是否存在某个key ,python3中没有,用in代替
dicta.pop('age')#弹出某个key的键值对,返回值,不存在抛出异常
dicta.update(bbb='cc',ddd=555)#添加键值对
print(dicta.popitem())#弹出键值对,dicta为空,抛出异常
del dicta['ddd']#删除某个key 的键值对

1.fromkeys为静态方法,可以通过类调用

2.新建一个字典值为字符串,数字,修改某一个键值时,不会影响其他键值

 新建一个字典值为[],修改某一个键值时,会影响其他键值

dic ={'k1':'aa','k2':'bb'}  
dic1 = dic.fromkeys(['k1','k2'],'cc') #由于fromkeys是静态方法,所以此方法没有必要
dic2 = dict.fromkeys(['k1','k2'],'cc')#与上方法一致
print(dic)
print(dic1)
print(dic2)
dic1['k1']='dd'#修改值后,并没有影响其他key的值
print(dic1)
dic3 = dict.fromkeys(['k1','k2','k3'],[])#新建三个key,值都是空列表的字典
print(dic3)
dic4 = {'k1':[],'k2':[],'k3':[]}#第二种建列表的方法
dic3['k3'].append('x')#第一种修改了一个键值,影响了其他key的值
print(dic3)#{'k1': ['x'], 'k3': ['x'], 'k2': ['x']}
dic4['k3'].append('x')#第二种修改了一个键值,没有影响其他key的值
print(dic4)#{'k1': [], 'k3': ['x'], 'k2': []}

 

posted @ 2017-04-20 09:45  1916  阅读(282)  评论(0)    收藏  举报