Python列出一个文件夹及其子目录的所有文件

 更新时间:2016年06月30日 11:44:53   作者:qizok  
这篇文章主要介绍了Python列出一个文件夹及其子目录的所有文件的方法,和python列出文件夹下的所有文件的四种方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下

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中json格式数据输出的简单实现方法

    python中json格式数据输出的简单实现方法

    下面小编就为大家带来一篇python中json格式数据输出的简单实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • Python调用Java可执行jar包问题

    Python调用Java可执行jar包问题

    这篇文章主要介绍了Python调用Java可执行jar包问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • 利用Python开发微信支付的注意事项

    利用Python开发微信支付的注意事项

    如今支付的引入是很多互联网产品都需要的。为了让用户用着更方便快捷,集成像支付宝、微信支付这样的第三方支付也就成了常有的事。今天跟着小编就来看看微信支付开发中几个值得注意的地方,涉及代码之处均用 Python 编写。
    2016-08-08
  • Pandas DataFrame中实现取单个值的读取和修改

    Pandas DataFrame中实现取单个值的读取和修改

    这篇文章主要介绍了Pandas DataFrame中实现取单个值的读取和修改,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • python 将字符串转换成字典dict

    python 将字符串转换成字典dict

    将字符串转化成字典dict类型?这个可以用python的标准库simplejson 转换为JSON格式。
    2013-03-03
  • Pycharm 使用 Pipenv 新建的虚拟环境(图文详解)

    Pycharm 使用 Pipenv 新建的虚拟环境(图文详解)

    pipenv 是 Pipfile 主要倡导者、requests 作者 Kenneth Reitz 写的一个命令行工具,主要包含了Pipfile、pip、click、requests和virtualenv。这篇文章主要介绍了Pycharm 使用 Pipenv 新建的虚拟环境的问题,需要的朋友可以参考下
    2020-04-04
  • Python中的 ansible 动态Inventory 脚本

    Python中的 ansible 动态Inventory 脚本

    这篇文章主要介绍了Python中的 ansible 动态Inventory 脚本,本章节通过实例代码从mysql数据作为数据源生成动态ansible主机为入口介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2020-01-01
  • Django将项目移动到新环境的操作步骤

    Django将项目移动到新环境的操作步骤

    本文分步骤给大家介绍Django将项目移动到新环境的方法,通过图文示例代码相结合给大家介绍的非常详细,需要的朋友参考下吧
    2021-08-08
  • 如何用python给朋友做生日快乐祝福

    如何用python给朋友做生日快乐祝福

    生活中除了给男神女神表白,还会遇到朋友过生日,所以小编今天就给大家带来了一个送给朋友的生日祝福程序,这篇文章主要给大家介绍了关于如何用python给朋友做生日快乐祝福的相关资料,需要的朋友可以参考下
    2023-11-11
  • python监控进程脚本

    python监控进程脚本

    这篇文章主要为大家详细介绍了python监控进程脚本,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04

最新评论