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 urllib模块urlopen()与urlretrieve()详解
Nov 01 Python
使用python解析xml成对应的html示例分享
Apr 02 Python
Python合并多个装饰器小技巧
Apr 28 Python
Python判断直线和矩形是否相交的方法
Jul 14 Python
深入理解 Python 中的多线程 新手必看
Nov 20 Python
python实现微信机器人: 登录微信、消息接收、自动回复功能
Apr 29 Python
详解python中的数据类型和控制流
Aug 08 Python
解决Numpy中sum函数求和结果维度的问题
Dec 06 Python
使用pymysql查询数据库,把结果保存为列表并获取指定元素下标实例
May 15 Python
keras 实现轻量级网络ShuffleNet教程
Jun 19 Python
keras:model.compile损失函数的用法
Jul 01 Python
python字符串的一些常见实用操作
Apr 06 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图像处理类实例
2015/07/28 PHP
Zend Framework教程之Zend_Helpers动作助手ViewRenderer用法详解
2016/07/20 PHP
PHP编程实现脚本异步执行的方法
2017/08/09 PHP
很酷的javascript loading效果代码
2008/06/18 Javascript
javascript对select标签的控制(option选项/select)
2013/01/31 Javascript
浅谈Javascript中深复制
2014/12/01 Javascript
jQuery给元素添加样式的方法详解
2015/12/30 Javascript
阿里巴巴技术文章分享 Javascript继承机制的实现
2016/01/14 Javascript
如何使用jquery修改css中带有!important的样式属性
2016/04/28 Javascript
js中遍历Map对象的简单实例
2016/08/08 Javascript
原生js封装的一些jquery方法(详解)
2016/09/20 Javascript
利用JS轻松实现获取表单数据
2016/12/06 Javascript
vue2手机APP项目添加开屏广告或者闪屏广告
2017/11/28 Javascript
React Native 使用Fetch发送网络请求的示例代码
2017/12/02 Javascript
vuejs选中当前样式active的实例
2018/08/22 Javascript
零基础之Node.js搭建API服务器的详解
2019/03/08 Javascript
vue实现随机验证码功能的实例代码
2019/04/30 Javascript
微信小程序select下拉框实现源码
2019/11/08 Javascript
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
2020/09/21 Javascript
python中PIL安装简单教程
2016/04/21 Python
[原创]Python入门教程4. 元组基本操作
2018/10/31 Python
Python语法分析之字符串格式化
2019/06/13 Python
Linux下升级安装python3.8并配置pip及yum的教程
2020/01/02 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
2020/04/21 Python
Pycharm学生免费专业版安装教程的方法步骤
2020/09/24 Python
10个最常见的HTML5面试题 附答案
2016/06/06 HTML / CSS
html5唤醒APP小记
2019/03/27 HTML / CSS
美国一家运动专业鞋类零售商:Warehouse Shoe Sale(WSS)
2018/03/28 全球购物
外贸业务员的岗位职责
2013/11/23 职场文书
初中物理教学反思
2014/01/14 职场文书
移风易俗倡议书
2014/04/15 职场文书
我的中国梦口号
2014/06/16 职场文书
庆祝国庆节标语
2014/10/09 职场文书
学前班语言教学计划
2015/01/20 职场文书
Python OpenCV形态学运算示例详解
2022/04/07 Python
JS前端canvas交互实现拖拽旋转及缩放示例
2022/08/05 Javascript