2016-03-06 99 views
1

我有一个解析.txt文件以匹配某些字符串的python脚本(带有方法)。我有四个其他的.txt文件,全部坐在同一个目录中,包括原始文件。我如何去平行化我的代码,以便我可以在所有这些代码上运行python脚本?并行化一个函数以在多个文件上运行

+0

你只需要在你的python中使用多线程以及需要处理的全局共享文件列表。每个线程从该共享列表中抓取一个条目并相应地处理该文件。文件名可以通过参数轻松传递。你可以使用system.argv – Mox

回答

2

例如使用concurrent.futures

from concurrent.futures import ThreadPoolExecutor 

list_of_files = ["foo1", "foo2", "foo3", "foo4"] 

with ThreadPoolExecutor(max_workers=4) as e: 
    futures = [e.submit(your_parsing_function(f) for f in list_of_files] 

可以使用as_completed方法添加可选的后处理逻辑。

相关问题