rsj0315 发表于 2021-3-4 14:50:00

读取一个文件夹内几千个小txt的方法,多线程

想请教下各位,一个文件内有几千个txt文件。文件内容并不大。

需求是把所有txt的文件,读取后,最后写入到excel里
我想到的是用多线程threading去干这事。

1.os.listdir(path)------->获取文件夹内的文件名字列表
2.for下标循环,把上边获取的list切成5份。





3.每份去开一个线程去读,清洗

最后5个线程返回的数据合在一起。

还有别的思路或者推荐吗?

z5560636 发表于 2021-3-4 17:13:59

很简单啊,你把所有的文件名都读取出来,放入消息队列中,然后启动线程去干,干完就用一个全局变量添加一下,然后继续干,直到消息队列为空。

kogawananari 发表于 2021-3-4 17:50:37

用生产者消费者模型根据清洗流程可以分多级消费者

rsj0315 发表于 2021-3-8 10:16:51

kogawananari 发表于 2021-3-4 17:50
用生产者消费者模型根据清洗流程可以分多级消费者

试试这个去,看看效率能否快点

rsj0315 发表于 2021-3-8 10:18:19

本帖最后由 rsj0315 于 2021-3-8 11:41 编辑

一会试试
页: [1]
查看完整版本: 读取一个文件夹内几千个小txt的方法,多线程