python使⽤ ThreadPoolExecutor实现open文件 赋值给列表
时间: 2024-10-13 08:15:32 浏览: 17
python入门-30.寻找列表中只出现一次的数字-寻找单身狗.py
在Python中,你可以使用`concurrent.futures.ThreadPoolExecutor`来并行处理打开文件的任务并将结果存储到列表中。首先,你需要导入所需的模块,然后创建一个`ThreadPoolExecutor`实例。接着,可以定义一个函数,例如`open_file`,它负责打开并读取文件的内容。接下来,你可以将这个函数作为参数传递给`submit`方法,并将结果收集到一个列表中。这里是一个示例:
```python
import concurrent.futures
import os
def open_file(file_path):
with open(file_path, 'r') as file:
return file.read()
# 文件路径列表
file_paths = ['file1.txt', 'file2.txt', 'file3.txt']
# 创建线程池
with concurrent.futures.ThreadPoolExecutor() as executor:
# 提交任务
results = [executor.submit(open_file, path) for path in file_paths]
# 收集并整理结果
files_content = [result.result() for result in results if result.exception() is None]
print(files_content)
阅读全文