Python学习笔记(21)-目录遍历
点此查看 零基础Python全栈文章目录及源码下载
本文目录
- 1. 简介
- 2. 实例
1. 简介
遍历一个目录下所有的文件夹和文件是非常有用的事情,在python中os模块提供了非常简单易行的遍历方法os.walk(path)。
另外一定要了解的一点是,os.walk(path)遍历有点“广度优先”的意思,也就是说在上一个os.walk没执行完之前,再运行os.walk会等待。
2. 实例
先看代码,注意ShowPathInfo函数是对一个目录进行处理,对该目录下的文件夹同样会递归调用ShowPathInfo,注意 print("*****")
输出的时机表明了os.walk等待执行的特点。
#目录的遍历#导入os模块
import os#获取目录信息
print("请输入目录信息")
dir=input()
while os.path.exists(dir)==False:print("目录不存在,请重新输入")dir=input()#对一个目录的处理函数
def ShowPathInfo(path):print("*****")for folder,subFolders,files in os.walk(path):print("\n==当前遍历目录:"+folder)for file in files:print("[文件]:"+file)for subFolder in subFolders:print("[文件夹]:"+subFolder)ShowPathInfo(subFolder) #主程序
print("==========遍历开始")
ShowPathInfo(dir)
print("==========遍历结束")
测试,根据****输出时机,看os.walk运行方式
请输入目录信息
C:\Users
==========遍历开始
*****==当前遍历目录:C:\Users
[文件]:desktop.ini
[文件夹]:Administrator
*****
[文件夹]:All Users
*****
[文件夹]:Classic .NET AppPool
*****
[文件夹]:Default
*****
[文件夹]:Default User
*****
[文件夹]:DefaultAppPool
*****
[文件夹]:Public
*****==当前遍历目录:C:\Users\Administrator
[文件]:.deliverycenter.installs
[文件]:.packettracer
[文件]:a.py
[文件]:mm.cfg
[文件]:NTUSER.DAT
[文件]:ntuser.dat.LOG1
[文件]:ntuser.dat.LOG2
[文件]:NTUSER.DAT{016888bd-6c6f-11de-8d1d-001e0bcde3ec}.TM.blf
[文件]:NTUSER.DAT{016888bd-6c6f-11de-8d1d-001e0bcde3ec}.TMContainer00000000000000000001.regtrans-ms
[文件]:NTUSER.DAT{016888bd-6c6f-11de-8d1d-001e0bcde3ec}.TMContainer00000000000000000002.regtrans-ms
[文件]:ntuser.ini
[文件]:ntuser.pol
[文件]:pdf.exe
[文件]:WebpageIcons.db
[文件夹]:.android
*****
[文件夹]:.eclipse
*****
[文件夹]:.idlerc
*****
[文件夹]:.IntelliJIdea2016.3
*****
[文件夹]:.m2
*****
[文件夹]:.p2
*****
[文件夹]:.VirtualBox
*****
[文件夹]:AppData
*****
[文件夹]:Application Data
*****
[文件夹]:Cisco Packet Tracer 6.0
Python学习笔记(21)-目录遍历相关推荐
- python学习笔记 os.scandir遍历目录
python学习笔记 os.scandir遍历目录 之前尝试用os.walk进行遍历目录,前几天看有人说os.scandir比walk更高效,尝试了一下,写了两端代码,做了一个测试 第一段用walk也 ...
- Python学习笔记 -- 列表2: 遍历:嵌套列表, 将其中同位置的元素组成新的列表
#遍历:嵌套列表, 将其中同位置的元素组成新的列表 lsts = [[1,2,3], [4,5,6],[7,8,9],[10,11,12]]ret_x = [x for [x,y,z] in lsts ...
- Python学习笔记:目录与文件操作
文章目录 一.案例演示 1.导入os与shutil模块 2.获取当前工作目录 3.创建目录 4.切换当前目录 5.创建文件,写入内容 6.打开文件,查看内容 7.查看目录信息 8.拷贝文件 9.文件改 ...
- Python学习笔记:第五站 转圈圈
Python学习笔记 文章目录 Python学习笔记 第五站 转圈圈 1. range()函数的使用 2. while循环 3. for-in循环 4. break.continue与else语句 5 ...
- Python学习笔记:第十五站 大宝藏
Python学习笔记 文章目录 Python学习笔记 第十五站 大宝藏 1. 编码格式介绍 2. 文件的读写原理 3. 文件读写操作 4. 文件对象常用的方法 5. with语句(上下文管理器) 6. ...
- Python学习笔记:第七站 夫妻站
Python学习笔记 文章目录 Python学习笔记 第七站 夫妻站 1. 什么是字典 2. 字典的创建 3. 字典的查询操作 4. 字典元素的增.删.改操作 5. 字典推导式 6. 本章作业 课程笔 ...
- Python学习笔记:第十三站 接着找对象
Python学习笔记 文章目录 Python学习笔记 第十三站 接着找对象 1. 封装 2. 继承 3. 方法重写 4. object类 5. 多态 6. 特殊方法和特殊属性 7. 类的赋值与拷贝 8 ...
- Python学习笔记:第十站 水晶球不调用不动
Python学习笔记 文章目录 Python学习笔记 第十站 水晶球不调用不动 1. 函数的创建和调用 2. 函数的参数传递 3. 函数的返回值 4. 函数的参数定义 5. 变量的作用域 6. 递归函 ...
- Python学习笔记:第四站 往哪走
Python学习笔记 文章目录 Python学习笔记 第四站 往哪走 1. 程序的组织结构 2. 顺序结构 3. 对象的布尔值 4. 分支结构 5. pass空语句 6. 本章作业 课程笔记参考B站视 ...
最新文章
- nginx 的动静分离配置(tomcat)
- Athentech Perfectly Clear中文版
- 了解JVM运行时的内存分配
- CAN总线技术在船舶监控系统的应用
- 基于STC89C52的韦根数据接收
- 干货| PHPCon上TARS-PHP全面解读及PPT下载
- php 最大限制,php – ModSecurity最大发布限制(PCRE限制错误)
- 再也不怕重装eclipse! 让你的eclipse插件只下载一次
- google浏览器html不提示,谷歌浏览器不显示标签页怎么回事 谷歌浏览器不显示标签页的解决方法...
- 数据库报错create connection SQLException,............ errorCode 1129, state HY000
- 微软公司软件测试工程师,【其它微软中国(Microsoft)工资】软件测试工程师待遇-看准网...
- 监听电源键的单击或长按事件
- KS检验、qq图、Scalability可扩展性
- uniapp swiper组件被内容撑开
- Do Transformers Really Perform Bad for Graph Representation 阅读笔记
- RK3568 VS RK3399
- 儿童学python第一课_初学Python(第一课)
- Angular项目中使用echarts中国地图
- Laplace变换的引入
- python论文格式检查系统_毕业论文格式检查软件