Ich habe die Frage multiprocess
in python3.5
.Python Multiprozess mit zwei Listen vergleichen
Wenn ich zwei Liste wie:
xlist = [1,2,3]
ylist = [4,5,6]
und ich tun möchte:
for i in xlist:
for j in ylist:
print (i*j)
der Ausgang
4
5
6
8
10
12
12
15
18
Ich versuche, ist, dass mit Multi-Prozess so zu tun :
import multiprocessing
global xlist
xlist = [1,2,3]
ylist = [4,5,6]
def product(ylist):
for x in xlist:
for y in ylist:
print (x,y)
return 'OK'
if __name__ == "__main__":
pool = multiprocessing.Pool()
results = []
for i in range(0, len(ylist)):
result = pool.apply_async(job, args=(ylist,))
results.append(result)
# print (result.get())
pool.close()
pool.join()
for result in results:
print(result.get())
Aber ich kann nicht die oben gezeigte Ausgabe bekommen. Meine Ausgabe ist
1 4
1 5
1 6
2 4
2 5
2 6
3 4
3 5
3 6
1 4
1 5
1 6
2 4
2 5
2 6
3 4
3 5
3 6
1 4
1 5
...
mit dem Code.
Gibt es Möglichkeiten, das Ziel zu erreichen (muss Multiprozess verwenden)?
Was meinst du? –
@MadPhysicist Ich möchte mit großen Daten umgehen, also muss ich Multiprozess verwenden, um die Berechnung zu verarbeiten. Aber ich habe keine Ahnung, wie Multiprocessing zu verwenden, um zwei Liste – chilun
Ich meinte "ich kann nicht das Ergebnis, das ich will." ist eine rote Flagge in einer SO Frage. Es ist zu vage –