再用dict.keys()就是狗

最近刷题用python比较多,毕竟list比其他语言里面array好用多了,当然也还有dict。

dict是真的好用,不过用多了难免会碰见判断某个key是否存在。以前习惯的写法是key in dict.keys()。所以这就炸了啊,只要碰见留一个卡超时的数据的题稳稳的超时啊。

d = dict()
key = 'key'
# 原来的写法
if key in d.keys():
    d[key] += 1
else:
    d[key] = 1

# 为了过题想出来的ZZ方法
try:
    d[key] += 1
except:
    d[key] = 1

# 推荐用的方法
d.has_key(key):
    d[key] += 1
else:
    d[key] = 1

# 写法最简单的方法
import collections
d = collections.defaultdict(int)
d[key] += 1

相关日志

  1. 2018.03.20

    使用正则表达式解析url

    #!/usr/bin/env python …

  2. 2018.03.20

    python-单向链表

    一个简单的单向链表类 (更多……

  3. 2018.06.07

    python爬虫:提取页面时间

    def date_check(date_st…

  4. 2018.08.08

    [微信公众号文章抓取.一]探索各种办法的可行性

    最近在公司做了一个这方面的项目,总结一下。顺…

  5. 2018.03.22

    关于python中yield和协程的一点理解

    yield一般应用于生成循环中的那个变量,一…

  6. 2018.08.21

    [微信公众号文章抓取.二]构建Anyproxy来获取数据

    上回书说到,啊啊呸。上一篇文章已经确定了抓取…

评论

还没有评论。

在此评论中不能使用 HTML 标签。