python 列出目录下所有文件_python实例31[列出目录下所有的文件到txt]

该博客介绍了两种使用Python列出指定目录及其子目录下所有特定类型文件的方法。第一种方法利用os.listdir,第二种方法使用os.walk。代码示例展示了如何根据扩展名(如.txt, .exe, .dll, .lib)查找并写入到txt文件中。" 73995860,5646520,智能音箱对比分析:Google Home vs Amazon Echo vs Apple Homepod vs 讯飞,"['智能音箱', 'Echo', 'Homepod', '谷歌', '讯飞']
摘要由CSDN通过智能技术生成

代码: (使用os.listdir)

import os

def ListFilesToTxt(dir,file,wildcard,recursion):

exts = wildcard.split(" ")

files = os.listdir(dir)

for name in files:

fullname=os.path.join(dir,name)

if(os.path.isdir(fullname) & recursion):

ListFilesToTxt(fullname,file,wildcard,recursion)

else:

for ext in exts:

if(name.endswith(ext)):

file.write(name + "\n")

break

def Test():

dir="J:\\1"

outfile="binaries.txt"

wildcard = ".txt .exe .dll .lib"

file = open(outfile,"w")

if not file:

print ("cannot open the file %s for writing" % outfile)

ListFilesToTxt(dir,file,wildcard, 1)

file.close()

Test()

代码:(使用os.walk) walk递归地对目录及子目录处理,每次返回的三项分别为:当前递归的目录,当前递归的目录下的所有子目录,当前递归的目录下的所有文件

import os

def ListFilesToTxt(dir,file,wildcard,recursion):

exts = wildcard.split(" ")

for root, subdirs, files in os.walk(dir):

for name in files:

for ext in exts:

if(name.endswith(ext)):

file.write(name + "\n")

break

if(not recursion):

break

def Test():

dir="J:\\1"

outfile="binaries.txt"

wildcard = ".txt .exe .dll .lib"

file = open(outfile,"w")

if not file:

print ("cannot open the file %s for writing" % outfile)

ListFilesToTxt(dir,file,wildcard, 0)

file.close()

Test()

欢迎大家改进共享!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值