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分析git log日志示例
Feb 27 Python
解决pyqt中ui编译成窗体.py中文乱码的问题
Dec 23 Python
python实现朴素贝叶斯分类器
Mar 28 Python
python3.6使用pickle序列化class的方法
Oct 22 Python
python中for循环输出列表索引与对应的值方法
Nov 07 Python
Python用61行代码实现图片像素化的示例代码
Dec 10 Python
树莓派+摄像头实现对移动物体的检测
Jun 22 Python
python读取并写入mat文件的方法
Jul 12 Python
python如何统计代码运行的时长
Jul 24 Python
ubuntu上安装python的实例方法
Sep 30 Python
django自带的权限管理Permission用法说明
May 13 Python
Django bulk_create()、update()与数据库事务的效率对比分析
May 15 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
解决phpmyadmin中文乱码问题。。。
2007/01/18 PHP
php为什么选mysql作为数据库? Mysql 创建用户方法
2007/07/02 PHP
ubuntu下编译安装xcache for php5.3 的具体操作步骤
2013/06/18 PHP
php合并js请求的例子
2013/11/01 PHP
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2611816 bytes)
2014/11/08 PHP
PHP简单判断字符串是否包含另一个字符串的方法
2016/03/25 PHP
Ajax同步与异步传输的示例代码
2013/11/21 Javascript
JavaScript实现基于十进制的四舍五入实例
2015/07/17 Javascript
简单谈谈Javascript中类型的判断
2015/10/19 Javascript
DOM中事件处理概览与原理的全面解析
2016/08/16 Javascript
JavaScript中子对象访问父对象的方式详解
2016/09/01 Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
2016/10/27 Javascript
JS排序之冒泡排序详解
2017/04/08 Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
2019/09/27 Javascript
javascript实现页面的实时时钟显示示例
2020/08/06 Javascript
javascript实现倒计时关闭广告
2021/02/09 Javascript
解析Python中的二进制位运算符
2015/05/13 Python
python监控键盘输入实例代码
2018/02/09 Python
Python matplotlib 画图窗口显示到gui或者控制台的实例
2018/05/24 Python
python实现爬取图书封面
2018/07/05 Python
Win10下python 2.7.13 安装配置方法图文教程
2018/09/18 Python
对于Python深浅拷贝的理解
2019/07/29 Python
Keras使用tensorboard显示训练过程的实例
2020/02/15 Python
Python如何使用bokeh包和geojson数据绘制地图
2020/03/21 Python
PyInstaller运行原理及常用操作详解
2020/06/13 Python
Python同时迭代多个序列的方法
2020/07/28 Python
倩碧美国官网:Clinique美国
2016/07/20 全球购物
世界上最大的在线学习和教学市场:Udemy
2017/11/08 全球购物
美国最大的存储市场:SpareFoot
2018/07/23 全球购物
澳洲的UGG雪地靴超级市场:Uggs.com.au
2020/04/06 全球购物
请解释virtual关键字的含义
2015/06/17 面试题
小学教师听课制度
2014/02/01 职场文书
天猫某品牌专卖店运营计划书
2014/03/21 职场文书
放飞中国梦演讲稿
2014/04/23 职场文书
民主生活会对照检查材料范文
2014/10/01 职场文书
CSS的calc函数用法小结
2022/06/25 HTML / CSS