Python实现读取目录所有文件的文件名并保存到txt文件代码

yipeiwu_com6年前Python基础

代码: (使用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()

相关文章

Python subprocess模块常见用法分析

本文实例讲述了Python subprocess模块常见用法。分享给大家供大家参考,具体如下: subprocess模块是python从2.4版本开始引入的模块。主要用来取代 一些旧的模...

python实现控制台打印的方法

如下所示: #!/usr/bin/env python import os import sys class CConsole: M_MAP_COLOR = {\ 'COLO...

Python lambda和Python def区别分析

Python支持一种有趣的语法,它允许你快速定义单行的最小函数。这些叫做lambda的函数,是从Lisp借用来的,可以用在任何需要函数的地方。 lambda的语法时常会使人感到困惑,la...

pandas 选择某几列的方法

如下所示: col_n = ['名称','收盘价','日期'] a = pd.DataFrame(df,columns = col_n) 以上这篇pandas 选择某几列的方法就...

Django中的cookie和session

Django中的cookie和session

http协议是无状态的。下一次去访问一个页面时并不知道上一次对这个页面做了什么。 无状态的应用层面的原因是:浏览器和服务器之间的通信都遵守HTTP协议。 根本原因是:浏览器与服务器是使用...