Python字典的操作与使用

字典的描述

字典是一种key-value的数据类型,使用就像我们上学用的字典,通过拼音(key)来查对应字的详细内容(value)。

字典的特性

1、字典是无序的(不像列表一样有下标,它通过key来获取value)

2、key必须是唯一的,所以天生去重

字典的操作

info = {
    'stu1101': "TengLan Wu",
    'stu1102': "LongZe Luola",
    'stu1103': "XiaoZe Maliya",
}

获取所有信息

print (info)

获取其中一个值

print (info["stu1101"])

更改其中一个值

info["stu1101"] = "武藤兰"

添加其中一个值

info["stu1104"] = "苍井空"

删除其中一个值

del info["stu1101"]

info.pop("stu1101")

info.popitem() #随机删除。

查找

print (info["stu1101"])#此方法在key存在时不会有问题,若key不存在,即报错。

print(info.get('stu1101'))#安全的获取,没有则返回空。

print('stu1101' in info)#判断key是否在字典中存在,返回布尔值。

字典的多级嵌套

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

av_catalog["大陆"]["1024"][1] += ",可以用爬虫爬下来"
print(av_catalog["大陆"]["1024"])
#ouput 
['全部免费,真好,好人一生平安', '服务器在国外,慢,可以用爬虫爬下来']

av_catalog.setdefault("大陆",{"www.baidu.com":[1,2]})#添加之前先遍历字典,若有相同的key,则不修改,若无,则添加新值。

其他字典用法

合并字典

info = {
    'stu1101': "TengLan Wu",
    'stu1102': "LongZe Luola",
    'stu1103': "XiaoZe Maliya",
}
b = {
    1:2,
    3:4,
    5:6
}
info.update(b)
print(info)#合并字典,若有交叉的key则后来的key会覆盖,若无,则添加进去。
print(info.items())#将字典转化为列表,但是这个列表不支持下标,很奇怪。

定义一个新的字典(不常用它)#它会把值全部copy给每一个key。

>>c = dict.fromkeys(["key1","key2","key3"],["value"])
>>print(c)
{'key1': ['value'], 'key3': ['value'], 'key2': ['value']}

字典的循环

info = {
    'stu1101': "TengLan Wu",
    'stu1102': "LongZe Luola",
    'stu1103': "XiaoZe Maliya",
}
for i in info:
    print(i,info[i])

 

谢土豪

如果有帮到你的话,请赞赏我吧!

posted @ 2016-10-02 09:29  kerwinC  阅读(865)  评论(0编辑  收藏  举报