Я хотел бы использовать ThreadPoolExecutor или ProcessPoolExecutor, чтобы мой код работал быстрее (я использую Windows). У меня есть цикл for с 4 переменными, и я хотел бы запустить их в одном диапазоне со всеми возможными комбинациями, поэтому я использую 'product' from 'itertools:
from itertools import product #Multiple loops
p=range(1,200,10)
No=4
for op0,op1,op2,op3 in product(p, repeat=No):
op=[op0,op1,op2,op3]
o=np.empty(No)
for i in range(0,No):
o[i]=0.1*op[i]
Тогда я бы хотелсделать что-то, как показано ниже, чтобы мой код работал в многопоточности:
from itertools import product #Multiple loops
import concurrent.futures #Multithreading/processing
p=range(1,200,10)
No=4
with concurrent.futures.ThreadPoolExecutor() as executor:
for op0,op1,op2,op3 in executor.product(p, repeat=No):
op=[op0,op1,op2,op3]
o=np.empty(No)
for i in range(0,No):
o[i]=0.1*op[i]
Я получаю сообщение об ошибке «Объект ThreadPoolExecutor не имеет атрибута« product »», но есть ли способ сделать что-то подобноек этому?
Заранее спасибо :)