[英]How to iterate over a list in a for loop in parallel in Python
我有一个列表,我们可以使用 for 循环进行迭代,如下所示:
myList = ['A', 'B', 'C', 'D']
for elem in myList:
print("Element = %s" % elem)
以上将按顺序迭代列表。 但我想同时做到这一点。 怎么做? 是否可以在不创建任何新方法的情况下这样做? 是否有必要创建任何多线程或多处理?
请指教。 任何例子都值得赞赏
谢谢。
作为对我添加的评论的回应,您可以使用线程来同时执行功能。 您需要导入库,定义要同时运行的两个函数,然后创建线程。
import threading
def func1():
#Perform one action here
myList = ['A', 'B', 'C', 'D']
for elem in myList:
print("Element = %s" % elem)
def func2():
#Perform one action here
myList = ['E', 'F', 'G', 'H']
for elem in myList:
print("Element = %s" % elem)
t1 = threading.Thread(target=func1) #Create first thread running the function func1
t2 = threading.Thread(target=func2) #Create second thread running the function func2
#Start the threads
t1.start()
t2.start()
如果你想并行迭代它,你必须实现某种多任务处理。 例如,您可以创建 2 个线程,一个用于前半部分,另一个用于后半部分 ([A,B], [C,D])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.