各位大佬好,我有一个字典格式的数据如下a,想运算数值b与a中每个数,demo如下,实际运算规律非常复杂,(非c = b*a,只是举个例子),比较耗时,请问如何并行运算或其他方式提升效率。
我的思路是让b与a中key(1)对应的value、key(2)对应的value、key(3)对应的value同时计算,满足if条件时跳出。请问该如何改进
a = {'1':[1,2,3],
'2':[4,5,6],
'3':[7,8,9]}
b = 3
for i in a.keys():
times = 0 #记录每次计算后值的和
for j in a[i]:
c = b * a
times += c
if times >30:
a[i].append(b)
break
问题出现的环境背景及自己尝试过哪些方法
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
你自己已经猜测到了并行的方法可以提升性能,因为GIL的存在python想要并行只能通过多进程,你可以去学习一下怎么使用multiprocessing来实现多进程达到你的并行目的