python3 字典

字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:
dict = {key1 : value1, key2 : value2 }

字典的特性:
dict是无序的
key必须是唯一的,so 天生去重

字典的操作

 

info = {
    'n101': "TengLan Wu",
    'n102': "LongZe Luola",
    'n103': "XiaoZe Maliya",
}

增加
info['1104'] = 'quangjingkong'
print(info)

修改
info['n101'] = '武滕兰'
print(info)

删除
info.pop("n101")     #删除键"n101"

del info['n101']       #删除键"n101"

info.popitem()         #随机删除一个键

info.clear()              # 清空字典

del dict                   # 删除字典

print(info)

查找
print("n102" in info)           #标准查找方式

print(info.get('n103'))        #获取,如key键不存在,返回None

print(info['n102'])             #获取,如key键不存在,返回KeyError

 

多级字典嵌套及操作

dict_address = {
    '广东省':{
                '广州市':{
                    '越秀区':{'越秀公园':'黄花岗公园'},
                    '荔湾区':['荔湾湖公园','荔枝湾'],
                    '天河区':('天河城','广州塔')
                }
    }
}
View Code

字典的一些内置用法

print(info.values())            #打印所有的键值
print(info.keys())              #打印所有的键

print(info.setdefault("n104",{'新垣结衣':'www.ooo.com'}))     #如字典里没有,创建一个新的键值
print(info.setdefault("n101"))                                #如字典里有,返回这个键值

b = {"n101":"boduoyejieyi","新来的":"报三围",'nnn':'mmm'}
info.update(b)             #把 b 合集到info 中,如已info已有key,替换更新,没有则新创建
print(info)

print(info.items())           #把字典转换成列表

c= dict.fromkeys([1,2,3],('test','nauxu'))        #创建一个初始化的字典,并赋一个相同的值
print(c)
输出:{1: ('test', 'nauxu'), 2: ('test', 'nauxu'), 3: ('test', 'nauxu')}
View Code

字典循环

for i in info:
    print(i)
    print(i,info[i])

for k , v in info.items():         #这方法不推荐使用,这里有把字典转换成列表的过程,如数据量大时,效率低。
    print(k,v)

 

posted @ 2019-07-31 09:13  wings_xu  阅读(153)  评论(0编辑  收藏  举报