Python 字典

基本结构:key -value

  使用{} 扣起来的    {key:value}

字典的特性:

  无序的,没有下标index,通过key进行检索

栗子:

#!/usr/local/bin/python3.5

info = {
    'name1':'Black',
    'name2':'Beer',
    'name3':'Yang'
}


print(info)
#查找
print(info['name1'])
#修改
info['name2'] = 'beer'
print(info)
#添加
info['name4'] = 'dada'
print(info)
#删除
del info['name4']
#info.pop('name4')
#info.popitem()  随机删除
print(info)

#安全的获取的方法
print(info.get('name100'))

#判断是否存在  python2 -> info.has_key()
print('name99' in info)

info1 = {
    'name1':'black',
    'name5':'QQ',
    1:3
}

#把存在key的value更新,不存在的追加
info.update(info1)
print(info)

#字典转换成list
print(info.items())

#初始化一个新 字典  key     init value 
a = dict.fromkeys([6,7,8], [1,"test"])
print(a)
# 多级的alue创建时只创建到引用 修改其中一个其他也会被修改
a[7][1] = "aaa"
print(a)

#循环遍历
for i in info:
    print(i, info[i])

for k,v in info.items():    #数据量大时非常慢
    print(k,v)


#多级字典

program_catlog = {
    "usa":{
        'C':["about 10000000", 'Good'],
        'C++':["about 10000002", 'Good'],
        'Java':["about 10000022", 'Good'],
    },
    "chn":{
        'Python':["156896574", 'Good'],
        'Lua':["156896985", 'Good'],
    },
    "jpn":{
        'Golang':["about 156896985", 'Bad'],
        'obj-c':["about 156896985", 'Good'],
    }
}

print(program_catlog)
program_catlog['chn']['Python'][1] = 'Very good'
print(program_catlog)

#能找到的话返回,不能找到的话追加
program_catlog.setdefault("Taiwan", {"python.org":['123456','good']})
print(program_catlog)

 

posted @ 2017-12-31 12:53  NiGuard  阅读(118)  评论(0)    收藏  举报