Python列出一个文件夹及其子目录的所有文件


Posted in Python onJune 30, 2016

python简介

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。

Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。

像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议。

>>> import os
>>> for i in os.walk("."):
... print i[0],"\n##",i[1],"\n##",i[2]
... 
. #当前目录
## ['fa', 'out'] #当前目录中的子目录 
## ['meta_rna.sh', 'nohup.out', 'log.cpu', 'blast_seq.py']
./fa # 第一个子目录
## [] # 第一个子目录中的目录
## ['assemblyar_new_2.faa']
./out # 第二个子目录
## [] # 第二个子目录中的目录
## ['assemblyar_new_2.faa.coord', 'assemblyar_new_2.faa.mask', 'assemblyar_new_2.faa.seq', 'result_1.xm', 'result.xml', 'blast_seq.py']

也可以用 os.path.walk, 先定义一个访问文件夹的函数, VisitDir

>>> def VisitDir(arg, dirname, names):
... for filespath in names:
... print os.path.join(dirname, filespath)
... 
>>> path="."
>>> os.path.walk(path, VisitDir, ())
./meta_rna.sh
./fa
./out
./nohup.out
./log.cpu
./blast_seq.py
./fa/assemblyar_new_2.faa
./out/assemblyar_new_2.faa.coord
./out/assemblyar_new_2.faa.mask
./out/assemblyar_new_2.faa.seq
./out/result_1.xm
./out/result.xml
./out/blast_seq.py
>>> os.getcwd()
'/home/served_pro/Find_nick'
>>> abs_path= os.getcwd()
>>> os.path.walk(abs_path, VisitDir, ())
/home/served_pro/Find_nick/meta_rna.sh
/home/served_pro/Find_nick/fa
/home/served_pro/Find_nick/out
/home/served_pro/Find_nick/nohup.out
/home/served_pro/Find_nick/log.cpu
/home/served_pro/Find_nick/blast_seq.py
/home/served_pro/Find_nick/fa/assemblyar_new_2.faa
/home/served_pro/Find_nick/out/assemblyar_new_2.faa.coord
/home/served_pro/Find_nick/out/assemblyar_new_2.faa.mask
/home/served_pro/Find_nick/out/assemblyar_new_2.faa.seq
/home/served_pro/Find_nick/out/result_1.xm
/home/served_pro/Find_nick/out/result.xml
/home/served_pro/Find_nick/out/blast_seq.py

下面给大家介绍python列出文件夹下的所有文件

#方法1:使用os.listdir
import os
for filename in os.listdir(r'c:\\windows'):
print filename
#方法2:使用glob模块,可以设置文件过滤
import glob
for filename in glob.glob(r'c:\\windows\\*.exe'):
print filename
#方法3:通过os.path.walk递归遍历,可以访问子文件夹
import os.path
def processDirectory ( args, dirname, filenames ):
print 'Directory',dirname
for filename in filenames:
print ' File',filename
os.path.walk(r'c:\\windows', processDirectory, None )
#方法4:非递归
import os
for dirpath, dirnames, filenames in os.walk('c:\\\\winnt'):
print 'Directory', dirpath
for filename in filenames:
print ' File', filename

另外,判断文件与目录是否存在:

import os
os.path.isfile('test.txt') #如果不存在就返回False
os.path.exists(directory) #如果目录不存在就返回False

以上所述是小编给大家介绍的Python列出一个文件夹及其子目录的所有文件,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
详解python中的json的基本使用方法
Dec 21 Python
Python排序搜索基本算法之插入排序实例分析
Dec 11 Python
Python之ReportLab绘制条形码和二维码的实例
Jan 15 Python
Django如何配置mysql数据库
May 04 Python
Python装饰器简单用法实例小结
Dec 03 Python
浅谈Python的条件判断语句if/else语句
Mar 21 Python
在windows下使用python进行串口通讯的方法
Jul 02 Python
python之array赋值技巧分享
Nov 28 Python
Django自定义列表 models字段显示方式
Apr 03 Python
Python smtp邮件发送模块用法教程
Jun 15 Python
Python利用命名空间解析XML文档
Aug 10 Python
python使用dlib进行人脸检测和关键点的示例
Dec 05 Python
django之常用命令详解
Jun 30 #Python
全面了解Python环境配置及项目建立
Jun 30 #Python
浅谈Python 集合(set)类型的操作——并交差
Jun 30 #Python
python dict.get()和dict['key']的区别详解
Jun 30 #Python
python中set常用操作汇总
Jun 30 #Python
浅谈python中set使用
Jun 30 #Python
详解Python操作RabbitMQ服务器消息队列的远程结果返回
Jun 30 #Python
You might like
PHP无敌近乎加密方式!
2010/07/17 PHP
PHP parse_ini_file函数的应用与扩展操作示例
2019/01/07 PHP
JavaScript OOP类与继承
2009/11/15 Javascript
获取dom元素那些讨厌的位置封装代码
2010/06/23 Javascript
基于jQuery UI CSS Framework开发Widget的经验
2010/08/21 Javascript
js中判断对象是否为空的三种实现方法
2013/12/23 Javascript
关于jQuery判断元素是否存在的问题示例探讨
2014/07/21 Javascript
javascript里绝对用的上的字符分割函数总结
2014/07/31 Javascript
javascript常用函数归纳整理
2014/10/31 Javascript
Javascript基础教程之函数对象和属性
2015/01/18 Javascript
js如何实现点击标签文字,文字在文本框出现
2015/08/05 Javascript
Html中 IFrame的用法及注意点
2016/12/22 Javascript
vue-cli项目如何使用vue-resource获取本地的json数据(模拟服务端返回数据)
2017/08/04 Javascript
vue中使用vue-router切换页面时滚动条自动滚动到顶部的方法
2017/11/28 Javascript
微信小程序 多行文本显示...+显示更多按钮和收起更多按钮功能
2019/09/26 Javascript
vue插槽slot的简单理解与用法实例分析
2020/03/14 Javascript
基于vue+echarts数据可视化大屏展示的实现
2020/12/25 Vue.js
[56:00]DOTA2上海特级锦标赛主赛事日 - 4 胜者组决赛Secret VS Liquid第一局
2016/03/05 DOTA
使用BeautifulSoup爬虫程序获取百度搜索结果的标题和url示例
2014/01/19 Python
Python文件读取的3种方法及路径转义
2015/06/21 Python
使用Python编写简单的端口扫描器的实例分享
2015/12/18 Python
Python利用Beautiful Soup模块修改内容方法示例
2017/03/27 Python
小米5s微信跳一跳小程序python源码
2018/01/08 Python
Python 记录日志的灵活性和可配置性介绍
2018/02/27 Python
python绘制彩虹图
2019/12/16 Python
基于h5py的使用及数据封装代码
2019/12/26 Python
Python 解析简单的XML数据
2020/07/24 Python
什么是GWT的Entry Point
2013/08/16 面试题
广告词串烧
2014/03/19 职场文书
部队反四风对照检查材料
2014/09/26 职场文书
2015年大学生工作总结
2015/04/21 职场文书
2015年煤矿安全工作总结
2015/05/23 职场文书
法定代表人免职证明
2015/06/24 职场文书
2015年汽车销售员工作总结
2015/07/24 职场文书
解决jupyter notebook图片显示模糊和保存清晰图片的操作
2021/04/24 Python
使用Django框架创建项目
2022/06/10 Python