字典的使用

字典的使用

增删改查

info = {
    'stu1101':'TengLan Wu',
    'stu1102':'Longze Luola',
    'stu1103':'XioaZe Maliya',
}

print(info)
print(info['stu1101'])
info['stu1101'] = "武藤兰"
info['stu1104'] = "CangjingKong"
print(info)
#delete
#del info['stu1101']
info.pop('stu1101')
print(info)
info.popitem()    ###随机删除
print(info)

#查找
print(info.get('stu1103'))
print(info.get('stu1106'))
print(info)
print('stu1103' in info)   #info.has_key("1103")---py2.7
print('stu1101' in info)   #info.has_key("1103")---py2.7

D:\python35\python.exe     D:/PycharmProjects/zhuyouen/0413/dictionary.py
{'stu1102': 'Longze Luola', 'stu1101': 'TengLan Wu', 'stu1103': 'XioaZe Maliya'}
TengLan Wu
{'stu1102': 'Longze Luola', 'stu1101': '武藤兰', 'stu1103': 'XioaZe Maliya', 'stu1104': 'CangjingKong'}
{'stu1102': 'Longze Luola', 'stu1103': 'XioaZe Maliya', 'stu1104': 'CangjingKong'}
{'stu1103': 'XioaZe Maliya', 'stu1104': 'CangjingKong'}
XioaZe Maliya
None
'stu1103': 'XioaZe Maliya', 'stu1104': 'CangjingKong'}
True
False

多层嵌套

av_catalog = {
    "欧美":{
        "www.youporn.com": ["很多免费的,世界最大的","质量一般"],
        "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
        "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
        "x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"]
    },
    "日韩":{
        "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
    },
    "大陆":{
        "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
    }
}


print(av_catalog)
print(av_catalog['大陆'])
av_catalog['大陆']['1024'][1] = '可以在国内做镜像'
print(av_catalog['大陆'])
av_catalog.setdefault('taiwan',{'www.baidu.com':[1,2]})
print(av_catalog)
av_catalog.setdefault('大陆',{'www.baidu.com':[1,2]})   ##如果已经有了不会修改
print(av_catalog)

D:\python35\python.exe     D:/PycharmProjects/zhuyouen/0413/dictionary.py
{'大陆': {'1024': ['全部免费,真好,好人一生平安', '服务器在国外,慢']}, '日韩': {'tokyo-hot': ['质量怎样不清楚,个人已经不喜欢日韩范了', '听说是收费的']}, '欧美': {'x-art.com': ['质量很高,真的很高', '全部收费,屌比请绕过'], 'www.pornhub.com': ['很多免费的,也很大', '质量比yourporn高点'], 'letmedothistoyou.com': ['多是自拍,高质量图片很多', '资源不多,更新慢'], 'www.youporn.com': ['很多免费的,世界最大的', '质量一般']}}
{'1024': ['全部免费,真好,好人一生平安', '服务器在国外,慢']}
{'1024': ['全部免费,真好,好人一生平安', '可以在国内做镜像']}
{'大陆': {'1024': ['全部免费,真好,好人一生平安', '可以在国内做镜像']}, '日韩': {'tokyo-hot': ['质量怎样不清楚,个人已经不喜欢日韩范了', '听说是收费的']}, 'taiwan': {'www.baidu.com': [1, 2]}, '欧美': {'x-art.com': ['质量很高,真的很高', '全部收费,屌比请绕过'], 'www.pornhub.com': ['很多免费的,也很大', '质量比yourporn高点'], 'letmedothistoyou.com': ['多是自拍,高质量图片很多', '资源不多,更新慢'], 'www.youporn.com': ['很多免费的,世界最大的', '质量一般']}}
{'大陆': {'1024': ['全部免费,真好,好人一生平安', '可以在国内做镜像']}, '日韩': {'tokyo-hot': ['质量怎样不清楚,个人已经不喜欢日韩范了', '听说是收费的']}, 'taiwan': {'www.baidu.com': [1, 2]}, '欧美': {'x-art.com': ['质量很高,真的很高', '全部收费,屌比请绕过'], 'www.pornhub.com': ['很多免费的,也很大', '质量比yourporn高点'], 'letmedothistoyou.com': ['多是自拍,高质量图片很多', '资源不多,更新慢'], 'www.youporn.com': ['很多免费的,世界最大的', '质量一般']}}

其他

info = {
    'stu1101':'TengLan Wu',
    'stu1102':'Longze Luola',
    'stu1103':'XioaZe Maliya',
}


b = {
    'stu1101':'Alex',
    1:3,
    2:5,
}

info.update(b)  #交叉创建
print(info)
print(info.values())
print(info.keys())
print(info.items())    #字典变为列表
c = dict.fromkeys([6,7,8])
print(c)
c = dict.fromkeys([6,7,8],'test')
print(c)
c[6]='testtest'
print(c)
c = dict.fromkeys([6,7,8],[1,{'name':'alex'},444])
print(c)
c[7][1]['name']='jack chen'
print(c)

D:\python35\python.exe D:/PycharmProjects/zhuyouen/0413/dictionary.py
{'stu1101': 'Alex', 1: 3, 2: 5, 'stu1102': 'Longze Luola', 'stu1103': 'XioaZe Maliya'}
dict_values(['Alex', 3, 5, 'Longze Luola', 'XioaZe Maliya'])
dict_keys(['stu1101', 1, 2, 'stu1102', 'stu1103'])
dict_items([('stu1101', 'Alex'), (1, 3), (2, 5), ('stu1102', 'Longze Luola'), ('stu1103', 'XioaZe Maliya')])
{8: None, 6: None, 7: None}
{8: 'test', 6: 'test', 7: 'test'}
{8: 'test', 6: 'testtest', 7: 'test'}
{8: [1, {'name': 'alex'}, 444], 6: [1, {'name': 'alex'}, 444], 7: [1, {'name': 'alex'}, 444]}
{8: [1, {'name': 'jack chen'}, 444], 6: [1, {'name': 'jack chen'}, 444], 7: [1, {'name': 'jack chen'}, 444]}

队列显示

info = {
    'stu1101':'TengLan Wu',
    'stu1102':'Longze Luola',
    'stu1103':'XioaZe Maliya',
}


for i in info:
    print(i,info[i])
print()
for k,v in info.items():
    print(k,v)

stu1101 TengLan Wu
stu1103 XioaZe Maliya
stu1102 Longze Luola

stu1101 TengLan Wu
stu1103 XioaZe Maliya
stu1102 Longze Luola
posted @ 2017-04-14 11:45  三个字  阅读(276)  评论(0编辑  收藏  举报