欧几里德距离循环的python多处理

时间:2017-08-06 06:33:49

标签: python multiprocessing python-multiprocessing

我有欧几里德距离代码,但由于数据很大,它的运行速度很慢。我可以用python多处理加快速度吗?

这是我的代码

def euclidean_distance(self,x1, x2):
    distance = 0.0
    for i in range(len(x1)):
        distance += pow( x1[i] - x2[i], 2)
    return math.sqrt(distance)

如何使用multipocessing池? 我可以使用pool.map来获取此功能吗?

#multiprocessing
pool = multiprocessing.pool(processes=2)
        dist = pool.map(self.euclidean_distance(test.vector,point.vector),range(len(x1))

它不起作用,因为范围(len(x1)在def之外。任何有助于加快该功能的帮助,谢谢

0 个答案:

没有答案