Python列出一个文件夹及其子目录的所有文件
发布时间:2020-12-16 20:33:09 所属栏目:Python 来源:网络整理
导读:python简介 Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。 Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。 像Perl语言一样,Python 源代码同样遵循 GPL(GNU General Public License)协议。 import os for i in
|
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],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,()) /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,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列出一个文件夹及其子目录的所有文件,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程小技巧网站的支持! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |








