最近刷题用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
评论