美文网首页
我是如何跨专业零基础学习Python爬虫的(4 dict处理)

我是如何跨专业零基础学习Python爬虫的(4 dict处理)

作者: A_Captain_Jack | 来源:发表于2017-12-19 15:25 被阅读0次

    使用zip创建字典

    创建字典有以下三种方法

    dict(a=1, b=2, c=2)dict([(a,1), (b,2), (c,3)])dict({a:1, b:2, c:3})

    推荐使用第二种方法结合zip创建

    key='abcde'value=range(1,6)dict(zip(key, value))

    使用iteritems来遍历字典

    d=dict(a=1, b=2, c=3)fork, vind.iteritems():printk, v# a 1# c 3# b 2

    当然也可以使用items来遍历字典, 与之不同的是iteritems返回一个迭代器。

    d=dict(a=1, b=2, c=3)fork, vind.items():printk, v# a 1# c 3# b 2

    In [69]: d.iteritems()Out[69]:In [70]: d.items()Out[70]: [('a',1), ('c',3), ('b',2)]

    使用get, pop来获取/删除key

    首先,dict[key] 与 delete dict[key]也可以获取/删除key。但是key不存在时,会引发KeyError异常。为了避免引发异常可以使用get和带defaut参数的pop

    get(key[, default])

    如果key在字典中,返回对应的value, 否则返回default。所以从来不会引发异常。

    pop(key[, default])

    如果default未设置,则如果key不在字典中,删除key将引发异常。使用时加上default。

    dict(dict1, **dict2)合并两个字典

    合并两个字典可以先把两个字典分成key-value对,再连接两个key-value对,生成新的字典。即dict(dict1.items()+dict2.items())。不过效率有些低。

    使用效率更高的dict(dict1, **dict2)连接两个字典。

    相关文章

      网友评论

          本文标题:我是如何跨专业零基础学习Python爬虫的(4 dict处理)

          本文链接:https://www.haomeiwen.com/subject/mhtiwxtx.html