Python入门之os.walk()方法

os.walk方法,主要用来遍历一个目录内各个子目录和子文件。

os.walk(top, topdown=True, onerror=None, followlinks=False) 

可以得到一个三元tupple(dirpath, dirnames, filenames),

第一个为起始路径,第二个为起始路径下的文件夹,第三个是起始路径下的文件。

dirpath 是一个string,代表目录的路径,

dirnames 是一个list,包含了dirpath下所有子目录的名字。

filenames 是一个list,包含了非目录文件的名字。

这些名字不包含路径信息,如果需要得到全路径,需要使用os.path.join(dirpath, name).

通过for循环自动完成递归枚举

例如:

F:\aaa 目录是这样的文件目录结构

F:\aaa

|--------1.txt

|--------2.txt

|--------3.txt

|--------4

|-------5.txt

|-------6.txt

|-------7.txt

分别打印各个参数的实际值

#!/usr/bin/env python
# 2.py
# use UTF-8
# Python 3.3.0  

# os.walk()的使用
import os  

# 枚举dirPath目录下的所有文件  

def main():
#begin
    fileDir = "F:" + os.sep + "aaa"     # 查找F:\aaa 目录下
    for root, dirs, files in os.walk(fileDir):
    #begin
        print(root)
        print(dirs)
        print(files)
    #end
    os.system("pause")
#end  

if __name__ == ‘__main__‘:
#begin
    main()
#end  

# 输出
# F:\aaa
# [‘4‘]
# [‘1.txt‘, ‘2.txt‘, ‘3.txt‘]
# F:\aaa\4
# []
# [‘5.txt‘, ‘6.txt‘, ‘7.txt‘]  

你也可以这样,用元组a,通过for循环即可完成目录的递归.

#!/usr/bin/env python
# 3.py
# use UTF-8
# Python 3.3.0  

# os.walk()的使用
import os  

# 枚举dirPath目录下的所有文件  

def main():
#begin
    fileDir = "F:" + os.sep + "aaa"     # 查找F:\aaa 目录下
    for a in os.walk(fileDir):
    #begin
        print(a[0])
        print(a[1])
        print(a[2])
    #end
    os.system("pause")
#end  

if __name__ == ‘__main__‘:
#begin
    main()
#end  

# 输出
# F:\aaa
# [‘4‘]
# [‘1.txt‘, ‘2.txt‘, ‘3.txt‘]
# F:\aaa\4
# []
# [‘5.txt‘, ‘6.txt‘, ‘7.txt‘]  

你还可以这样,先打印目录,再打印各个文件

#!/usr/bin/env python
# 2.py
# use UTF-8
# Python 3.3.0  

# os.walk()的使用
import os  

# 枚举dirPath目录下的所有文件  

def main():
#begin
    fileDir = "F:" + os.sep + "aaa"     # 查找F:\aaa 目录下
    for root, dirs, files in os.walk(fileDir):
    #begin
        for dir in dirs:
        #begin
            print(os.path.join(root, dir))
        #end
        for file in files:
        #begin
            print(os.path.join(root, file))
        #end
    #end
    os.system("pause")
#end  

if __name__ == ‘__main__‘:
#begin
    main()
#end  

# 输出
# F:\aaa\4
# F:\aaa\1.txt
# F:\aaa\2.txt
# F:\aaa\3.txt
# F:\aaa\4\5.txt
# F:\aaa\4\6.txt
# F:\aaa\4\7.txt  

参考

原文地址:https://www.cnblogs.com/JetpropelledSnake/p/8982495.html

时间: 2024-08-02 21:28:35

Python入门之os.walk()方法的相关文章

Python os.walk() 方法遍历文件目录

概述 os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下. os.walk() 方法是一个简单易用的文件.目录遍历器,可以帮助我们高效的处理文件.目录方面的事情. 在Unix,Windows中有效. 语法 walk()方法语法格式如下: os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]]) 参数 top -- 是你所要便利的目录的地址, 返回的是一个三元组(root,dirs,files)

Python os.walk() 方法

#coding=utf-8 import os #(dirpath, dirnames, filenames)[文件夹路径, 文件夹名字, 文件名] def file_name(file_dir): for root, dirs, files in os.walk(file_dir): for name in files: print(os.path.join(root,name)) for name in dirs: print(os.path.join(root, name)) #print

python中的os.walk

原文出处:https://www.jianshu.com/p/bbad16822eab python中os.walk是一个简单易用的文件.目录遍历器,可以帮助我们高效的处理文件.目录方面的事情. 1.载入 要使用os.walk,首先要载入该函数 可以使用以下两种方法 import os from os import walk 2.使用 os.walk的函数声明为: walk(top, topdown=True, onerror=None, followlinks=False) 参数 top 是你

python中的os.walk的用法

os.walk 的返回值是一个生成器(generator),也就是说我们需要不断的遍历它,来获得所有的内容. 每次遍历的对象都是返回的是一个三元组(root,dirs,files) root 所指的是当前正在遍历的这个文件夹的本身的地址 dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录) files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录) 如果topdown 参数为真,walk 会遍历top文件夹,与top文件夹中每一个子目录. 作者:Mik

Python 之 os.walk()

原文地址https://www.cnblogs.com/JetpropelledSnake/p/8982495.html          http://www.runoob.com/python/os-walk.html os.walk方法,主要用来遍历一个目录内各个子目录和子文件. os.walk(top, topdown=True, onerror=None, followlinks=False) 可以得到一个三元tupple(dirpath, dirnames, filenames),

Python os.walk文件遍历

os.walk(top, topdown=True, onerror=None, followlinks=False) 可以得到一个三元tupple(dirpath, dirnames, filenames), 第一个为起始路径,第二个为起始路径下的文件夹,第三个是起始路径下的文件. dirpath 是一个string,代表目录的路径, dirnames 是一个list,包含了dirpath下所有子目录的名字. filenames 是一个list,包含了非目录文件的名字. 这些名字不包含路径信息

Python 用 os.walk 遍历目录

今天第一次进行 文件遍历,自己递归写的时候还调试了好久,(主要因为分隔符号的问题),后来发现了os.walk方法,就忍不住和大家分享下. 先看下代码: import os for i in os.walk('c:'+os.sep+'ant'):    print i[1] 下面是输出: c:\antc:\ant\binc:\ant\docsc:\ant\docs\ant2c:\ant\docs\antlibsc:\ant\docs\antlibs\antunitc:\ant\docs\antli

python 中的os模块

Python os 模块提供了一个统一的操作系统接口函数 一.对于系统的操作 1.os.name 当前使用平台 其中 'nt' 是 windows,'posix' 是linux 或者 unix 2.os.sep 输出操作系统的特定的路径分隔符.Win下为"\",Linux下为"/" 3.os.pathsep 输出分格符 输出用于分割文件路径的字符串. Windows下是':',Linux下为":" 4.os.linesep 换行符 输出当前平台是

python中的 os.mkdir和os.mkdirs

创建目录 在Python中可以使用os.mkdir()函数创建目录(创建一级目录). 其原型如下所示: os.mkdir(path) 其参数path 为要创建目录的路径. 例如要在D盘下创建hello的目录 >>> import os >>> os.mkdir('d:\hello') 可以使用os.makedirs()函数创建多级目录. 其原型如下所示: os.makedirs(path) 其参数path 为要创建目录的路径. 如在D盘下创建books的目录,books