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 相关文章推荐
利用soaplib搭建webservice详细步骤和实例代码
Nov 20 Python
Python变量作用范围实例分析
Jul 07 Python
Python基于scapy实现修改IP发送请求的方法示例
Jul 08 Python
详解python上传文件和字符到PHP服务器
Nov 24 Python
Python读取Word(.docx)正文信息的方法
Mar 15 Python
计算机二级python学习教程(1) 教大家如何学习python
May 16 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
Aug 15 Python
Django admin.py 在修改/添加表单界面显示额外字段的方法
Aug 22 Python
一行Python代码制作动态二维码的实现
Sep 09 Python
详细分析Python可变对象和不可变对象
Jul 09 Python
Python进程间的通信之语法学习
Apr 11 Python
python中pymysql包操作数据库方法
Apr 19 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网页木马一枚 附PHP木马的防范方法
2009/10/09 PHP
php设计模式 Adapter(适配器模式)
2011/06/26 PHP
PHP计算一年多少个星期和每周的开始和结束日期
2014/07/01 PHP
PHP依赖倒置(Dependency Injection)代码实例
2014/10/11 PHP
PHP中round()函数对浮点数进行四舍五入的方法
2014/11/19 PHP
PHP通过微信跳转的Code参数获取用户的openid(关键代码)
2016/07/06 PHP
laravel5.6实现数值转换
2019/10/23 PHP
PHP实现简单日历类编写
2020/08/28 PHP
javascript下有关dom以及xml节点访问兼容问题
2007/11/26 Javascript
ExtJS 2.0 GridPanel基本表格简明教程
2010/05/25 Javascript
父子窗体间传递JSON格式的数据的代码
2010/12/25 Javascript
用jquery方法操作radio使其默认选项是否
2013/09/10 Javascript
js+html制作简单验证码
2017/02/16 Javascript
node.js中实现kindEditor图片上传功能的方法教程
2017/04/26 Javascript
JavaScript数据结构之双向链表和双向循环链表的实现
2017/11/28 Javascript
小程序实现左滑删除效果
2019/07/25 Javascript
JS合并两个数组的3种方法详解
2019/10/24 Javascript
js简单粗暴的发布订阅示例代码
2021/01/23 Javascript
Python对两个有序列表进行合并和排序的例子
2014/06/13 Python
Python中Iterator迭代器的使用杂谈
2016/06/20 Python
Python使用pymysql小技巧
2017/06/04 Python
python通过opencv实现批量剪切图片
2017/11/13 Python
Python排序搜索基本算法之归并排序实例分析
2017/12/08 Python
K-近邻算法的python实现代码分享
2017/12/09 Python
Python程序员面试题 你必须提前准备!
2018/01/16 Python
用scikit-learn和pandas学习线性回归的方法
2019/06/21 Python
django框架中ajax的使用及避开CSRF 验证的方式详解
2019/12/11 Python
Python3标准库之threading进程中管理并发操作方法
2020/03/30 Python
Python基于Faker假数据构造库
2020/11/30 Python
台湾饭店和机票预订网站:Expedia台湾
2016/08/05 全球购物
耐克亚太地区:Nike APAC
2019/12/07 全球购物
单位在职证明范本
2014/01/09 职场文书
实习协议书
2015/01/27 职场文书
学历证明范文
2015/06/16 职场文书
催款函范文
2015/06/24 职场文书
JS开发前端团队展示控制器来为成员引流
2022/08/14 Javascript