keyspython
发布时间: 2024-12-28 11:18:19
‘壹’ python中的keys()函数有什么作用
keys返回的是包含所有键的一个列表,而字典名本身代表字典这个对象。之所以for循环能直接作用于字典名上是因为字典类中实现了iter()方法,它会返回一个迭代器,这个迭代器能逐一返回字典中的每个键。
‘贰’ tomcat启动时报class path contains multiple slf4j bindings的错,为什么
看看其的运算速度:
In [4]:
%timeit vs.groupby(ks, sort=False).sum()
10 loops, best of 3: 53 ms per loop
如果用Python标准库来实现这个功能的话,可以使用defaultdict。下面的程序对列表keys和values进行迭代,因为Python列表的存取速度比Series要快很多。
In [5]:
from collections import defaultdict
from itertools import izip
def groupby_python(keys, values):
d = defaultdict(float)
for k, v in izip(keys, values):
d[k] += v
return d
In [6]:
%timeit groupby_python(keys, values)
1 loops, best of 3: 183 ms per loop
Pandas的Series.groupby比用defaultdict实现的要快接近4倍。
热点内容