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内置数据类型详解
Aug 18 Python
跟老齐学Python之大话题小函数(2)
Oct 10 Python
python实现淘宝秒杀聚划算抢购自动提醒源码
Jun 23 Python
python3 selenium自动化 下拉框定位的例子
Aug 23 Python
解决在pycharm运行代码,调用CMD窗口的命令运行显示乱码问题
Aug 23 Python
python__name__原理及用法详解
Nov 02 Python
Python实现钉钉订阅消息功能
Jan 14 Python
flask框架自定义url转换器操作详解
Jan 25 Python
python使用gdal对shp读取,新建和更新的实例
Mar 10 Python
python中如何设置代码自动提示
Jul 15 Python
python爬虫要用到的库总结
Jul 28 Python
如何利用Python实现一个论文降重工具
Jul 09 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中使用redis队列操作实例代码
2013/02/07 PHP
php广告加载类用法实例
2014/09/23 PHP
PHP实现页面静态化的超简单方法
2016/09/06 PHP
PHP 出现 http500 错误的解决方法
2021/03/09 PHP
myeclipse安装jQuery插件的方法
2011/03/29 Javascript
JavaScript EasyPager 分页函数
2011/05/25 Javascript
JS中的substring和substr函数的区别说明
2013/05/07 Javascript
javascript中关于&& 和 || 表达式的小技巧分享
2015/04/10 Javascript
浅谈jQuery中replace()方法
2015/05/13 Javascript
7个去伪存真的JavaScript面试题
2016/01/07 Javascript
prototype.js常用函数详解
2016/06/18 Javascript
解决vue attr取不到属性值的问题
2018/09/18 Javascript
解决vue请求接口第一次成功,第二次失败问题
2020/09/08 Javascript
vue移动端下拉刷新和上滑加载
2020/10/27 Javascript
python3访问sina首页中文的处理方法
2014/02/24 Python
使用python实现正则匹配检索远端FTP目录下的文件
2015/03/25 Python
python调用java模块SmartXLS和jpype修改excel文件的方法
2015/04/28 Python
TensorFlow实现Logistic回归
2018/09/07 Python
python获取Linux发行版名称
2019/08/30 Python
利用python读取YUV文件 转RGB 8bit/10bit通用
2019/12/09 Python
利用Python如何实时检测自身内存占用
2020/05/09 Python
Python docutils文档编译过程方法解析
2020/06/23 Python
Python基于内置函数type创建新类型
2020/10/22 Python
复古斯堪的纳维亚儿童服装:Baby go Retro
2017/09/09 全球购物
Tommy Hilfiger澳洲官网:美国高端休闲领导品牌
2020/12/16 全球购物
新闻专业推荐信范文
2013/11/20 职场文书
餐饮业员工工作决心书
2014/03/11 职场文书
亮化工程实施方案
2014/03/17 职场文书
我爱我校演讲稿
2014/05/21 职场文书
见习报告格式要求
2014/11/04 职场文书
2014年物资管理工作总结
2014/12/02 职场文书
2015年六年级班主任工作总结
2015/10/15 职场文书
检举信的写法
2019/04/10 职场文书
2019公司管理制度
2019/04/19 职场文书
关于感恩的歌曲整理(8首)
2019/08/14 职场文书
各种货币符号快捷输入
2022/02/17 杂记