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实现Mysql数据库连接池实例详解
Apr 11 Python
python 第三方库的安装及pip的使用详解
May 11 Python
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
Mar 15 Python
Python continue继续循环用法总结
Jun 10 Python
Python基于递归算法求最小公倍数和最大公约数示例
Jul 27 Python
Python3编码问题 Unicode utf-8 bytes互转方法
Oct 26 Python
python生成lmdb格式的文件实例
Nov 08 Python
python tkinter库实现气泡屏保和锁屏
Jul 29 Python
python英语单词测试小程序代码实例
Sep 09 Python
python pycharm最新版本激活码(永久有效)附python安装教程
Sep 18 Python
python解析xml文件方式(解析、更新、写入)
Mar 05 Python
Python datetime 如何处理时区信息
Sep 02 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 什么是PEAR?
2009/03/19 PHP
Windows下的PHP安装文件线程安全和非线程安全的区别
2014/04/23 PHP
destoon实现商铺管理主页设置增加新菜单的方法
2014/06/26 PHP
再Docker中架设完整的WordPress站点全攻略
2015/07/29 PHP
yii实现使用CUploadedFile上传文件的方法
2015/12/28 PHP
PHP批量去除BOM头内容信息代码
2016/03/11 PHP
Yii框架核心组件类实例详解
2019/08/06 PHP
通过下拉框的值来确定输入框是否可以为空的代码
2011/10/18 Javascript
整理的比较全的event对像在ie与firefox浏览器中的区别
2013/11/25 Javascript
Javascript writable特性介绍
2015/02/27 Javascript
vue.js开发环境安装教程
2017/03/17 Javascript
使用JavaScript实现表格编辑器(实例讲解)
2017/08/02 Javascript
移动前端图片压缩上传的实例
2017/12/06 Javascript
详解Vue.js中.native修饰符
2018/04/24 Javascript
vue通过点击事件读取音频文件的方法
2018/05/30 Javascript
浅谈ng-zorro使用心得
2018/12/03 Javascript
layui 解决富文本框form表单提交为空的问题
2019/10/26 Javascript
axios 实现post请求时把对象obj数据转为formdata
2019/10/31 Javascript
node后端服务保活的实现
2019/11/10 Javascript
JavaScript 中的六种循环方法
2021/01/06 Javascript
9种python web 程序的部署方式小结
2014/06/30 Python
Django中利用filter与simple_tag为前端自定义函数的实现方法
2017/06/15 Python
Python编程flask使用页面模版的方法
2018/12/28 Python
win10环境下配置vscode python开发环境的教程详解
2019/10/16 Python
Python实现文件压缩和解压的示例代码
2020/08/12 Python
Kmeans均值聚类算法原理以及Python如何实现
2020/09/26 Python
CSS3实现王者荣耀匹配人员加载页面的方法
2019/04/16 HTML / CSS
字中字效果的实现【html5实例】
2016/05/03 HTML / CSS
使用HTML5做的导航条详细步骤
2020/10/19 HTML / CSS
德国电子商城:ComputerUniverse
2017/04/21 全球购物
锐步美国官方网站:Reebok美国
2018/01/10 全球购物
如何强制垃圾回收
2015/10/06 面试题
安全伴我行演讲稿
2014/09/04 职场文书
2015年幼儿园教育教学工作总结
2015/05/25 职场文书
一个都不能少观后感
2015/06/04 职场文书
工作简报怎么写
2015/07/21 职场文书