python处理上万文件速度太慢

刚刚学的python,所以不是很懂应该怎么优化

代码如下:

list = os.listdir(rootdir) 
for i in range(0,len(list)):
    path = os.path.join(rootdir,list[i])
    fileFont = os.path.splitext(path)[0]
    fileDate = fileFont.split('.')
    fileDate = fileDate[len(fileDate)-1]
    # 获取时间大于 20130101
    totals = totals.merge(right=num, how="outer", on="date", sort=True) 的文件
    
    fileList.append(fileDate)
    with open(path, 'r') as f:
        # print(len(f.readlines()))
        rowNum = len(f.readlines())
        rowList.append(rowNum)
    f.close()

这里需要循环十几个文件夹,每个文件夹里有三千多个.csv文件。按照这么写的话差不多一个小时才遍历完.
应该怎么做才可以提高速度呢?

阅读 3.9k
1 个回答

一般思路是多线程+异步打开每个文件
建议搜一下这两方面python的相关知识

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题