Python中实现多线程有非常多种方式。这里给出的是最简单的一种。
假设使用10个线程,统计 /test
文件夹下面所有txt文件的行数并打印出来
import os
from multiprocessing.dummy import Pool
def get_source(path):
with open(path, encoding='utf-8') as f:
count = len(f.readlines())
print(f'文件:{path}有{count}行内容')
path_list = [os.path.join('/test', x) for x in os.listdir('/test') if x.endswith('.txt')]
pool = Pool(10)
pool.map(get_source, path_list)
完成。