python学习笔记 os.scandir遍历目录

之前尝试用os.walk进行遍历目录,前几天看有人说os.scandir比walk更高效,尝试了一下,写了两端代码,做了一个测试
第一段用walk也是之前刚接触python 的时候在网上扒的

class scanwalk():def __init__(self):self.d=[]def walkdir(self,dir):for root,dirnames,filenames in os.walk(dir):for filename in filenames:file=os.path.join(root,filename)self.d.append(file)

第二段是用dirscan写的


class scan():def __init__(self):self.d=[]def scan(self,dir):for i in os.scandir(dir):if i.is_dir():self.scan(i)else:self.d.append(i.path)

文件夹内容比较少的时候两个运行基本没感觉到区别
我用了一个20g装满word的层层文件夹测试,第一次运行时时间都差不多,但是第二次开始walk稳定在50秒左右,而dirscan稳定在30秒左右,效率确实有提升

python学习笔记 os.scandir遍历目录相关推荐

  1. Python学习笔记.OS学习笔记 OS操作系统(operating system)(二)程序和进程 输出进程号,工作目录最有用!

    程序和进程: 运行一个程序的时候,操作系统会创建一个进程.他会使用系统资源和操作系统内核的数据结构! 进程间相互隔离,即一个进程无法访问其他进程内容,也无法操作其他进程! Mac上面可以使用活动监视器 ...

  2. Python学习笔记_文件读写,目录遍历类封装

    文件读写和目录遍历类的封装. mylib.py 1 # -*- coding:utf-8 -*- 2 3 __author__ = 'huanghuan' 4 5 import os 6 from o ...

  3. Python学习笔记——os模块【文件、目录方法】

    例子 train_data_path = os.path.join(data_path, 'npy/') 解释:os.path.join(path,name)  连接目录和文件名或目录 ls = os ...

  4. Python学习笔记.OS学习笔记 OS操作系统(operating system)(一)

    前言,日常操作.列出文件夹或者目录内容,创建和删除文件, 以及一些其他无聊的事都可以交给Python这个小玩意实现! 进入正题: 操作之前,都要引入一下,不引入无法使用! 好吧,不得不先说说第八章的知 ...

  5. Python学习笔记 -- 列表2: 遍历:嵌套列表, 将其中同位置的元素组成新的列表

    #遍历:嵌套列表, 将其中同位置的元素组成新的列表 lsts = [[1,2,3], [4,5,6],[7,8,9],[10,11,12]]ret_x = [x for [x,y,z] in lsts ...

  6. Python学习笔记.OS学习笔记 OS操作系统(operating system)(三) 日期和时间

    日期和时间: 好多库函数: datetime time calendar dateutil ...and so on 日期表示的二义性,很烦人! 1/6/2010 你不知道到底是2010年的1月6日, ...

  7. Python学习笔记13_模块

    Python学习笔记13_模块 文章目录 Python学习笔记13_模块 1.导入模块和的方法及使用 2.分层的文件系统中常用的包结构 3.OS 模块 4.sys 模块 5.math 模块 6.ran ...

  8. Python学习笔记:Day 3编写ORM

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  9. Python学习笔记12_函数

    Python学习笔记12_函数 文章目录 Python学习笔记12_函数 1.函数定义 2.函数调用 3.函数的参数 3.1.可更改对象和不可更改对象参数 3.2.必需参数(位置参数) 3.3.关键字 ...

最新文章

  1. 在win7下安装SQL sever2005
  2. linux iptables:安全应用,防火墙
  3. windows 技术篇 - 启动项里没有的程序设置为开机启动方法
  4. Eigen求解数学问题(一)
  5. 定义简单类-创建多个猫对象
  6. UIAutomator简介
  7. 「分布式系统理论」系列专题
  8. 电信版iPhone 4S最低套餐49元
  9. 泛微发布亿元补贴计划,推动移动办公普及
  10. 【FPGA+BP神经网络】基于FPGA的简易BP神经网络verilog设计
  11. 安卓逆向015之JEB静态分析与动态调试(注册机)
  12. 局域网显示服务器未启动,“Workstation服务器无法启动,所以上不连局域网解决方案”的解决方案...
  13. 好用的换ip工具分享
  14. [CTFHub] Web RCE Write ups
  15. 斐讯r1换网络_斐讯R1音响升级更新教程 亲测有效
  16. 1-4 CAD 圆弧(arc)
  17. 中国计算机协会推荐学术会议、期刊(人工智能)收藏直连版
  18. 使用了一次VPN关闭后,网页打不开了
  19. 利用Python实现FGO自动战斗脚本,再也不用爆肝啦~
  20. requests库安装和简单功能学习总结

热门文章

  1. 001 2G3G4G的网速平常的各是多少
  2. legacy服务器安装系统,支持UEFI和LEGACY的多系统安装U盘
  3. hdu 6686 Rikka with Travels
  4. 转载:十年驾车经验总结:活着,才是硬道理
  5. 罗振宇2018《时间的朋友》--小趋势
  6. OpenCV图像处理--设置和获取摄像头参数
  7. 外网内网同时使用--设置如下
  8. 加载模型及对测试数据进行预测p41
  9. 王道书P41 T21(单链表实现)
  10. R语言使用psych包的cor.test函数检验dataframe中多个数值数据列之间的相关性系数是否具有统计显著性、对相关性系数进行显著性检验、使用print函数和short参数输出系数的置信区间