Python遍历文件夹的两种方法比较
来源:互联网 发布:背单词的软件 编辑:程序博客网 时间:2024/05/20 23:07
模块os中的walk()函数可以遍历文件夹下所有的文件。
该函数可以得到一个三元tupple(dirpath, dirnames, filenames).
参数含义:
- dirpath:string,代表目录的路径;
- dirnames:list,包含了当前dirpath路径下所有的子目录名字(不包含目录路径);
- filenames:list,包含了当前dirpath路径下所有的非目录子文件的名字(不包含目录路径)。
注意,dirnames和filenames均不包含路径信息,如需完整路径,可使用os.path.join(dirpath, dirnames)
下面给出代码;
当需要特定类型的文件时,代码如下:
os.listdir()函数得到的是仅当前路径下的文件名,不包括子目录中的文件,所有需要使用递归的方法得到全部文件名。
直接给出代码,函数将返回类型为‘.jpeg’个文件名:
- # -*- coding: utf-8 -*-
- import os
- def Test1(rootDir):
- list_dirs = os.walk(rootDir)
- for root, dirs, files in list_dirs:
- for d in dirs:
- print os.path.join(root, d)
- for f in files:
- print os.path.join(root, f)
- # -*- coding: utf-8 -*-
- import os
- def Test2(rootDir):
- for lists in os.listdir(rootDir):
- path = os.path.join(rootDir, lists)
- print path
- if os.path.isdir(path):
- Test2(path)
- E:\TEST
- │--A
- │ │--A-A
- │ │ │--A-A-A.txt
- │ │--A-B.txt
- │ │--A-C
- │ │ │--A-B-A.txt
- │ │--A-D.txt
- │--B.txt
- │--C
- │ │--C-A.txt
- │ │--C-B.txt
- │--D.txt
- │--E
- Test1('E:\TEST')
- print '======================================='
- Test2('E:\TEST')
- >>>
- E:\TEST\A
- E:\TEST\C
- E:\TEST\E
- E:\TEST\B.txt
- E:\TEST\D.txt
- E:\TEST\A\A-A
- E:\TEST\A\A-C
- E:\TEST\A\A-B.txt
- E:\TEST\A\A-D.txt
- E:\TEST\A\A-A\A-A-A.txt
- E:\TEST\A\A-C\A-B-A.txt
- E:\TEST\C\C-A.txt
- E:\TEST\C\C-B.txt
- =======================================
- E:\TEST\A
- E:\TEST\A\A-A
- E:\TEST\A\A-A\A-A-A.txt
- E:\TEST\A\A-B.txt
- E:\TEST\A\A-C
- E:\TEST\A\A-C\A-B-A.txt
- E:\TEST\A\A-D.txt
- E:\TEST\B.txt
- E:\TEST\C
- E:\TEST\C\C-A.txt
- E:\TEST\C\C-B.txt
- E:\TEST\D.txt
- E:\TEST\E
- >>>
- def Test3(rootDir, level=1):
- if level==1: print rootDir
- for lists in os.listdir(rootDir):
- path = os.path.join(rootDir, lists)
- print '│ '*(level-1)+'│--'+lists
- if os.path.isdir(path):
- Test3(path, level+1)
阅读全文
0 0
- Python遍历文件夹的两种方法比较
- Python遍历文件夹的两种方法比较
- Python遍历文件夹的两种方法比较
- Python遍历文件夹的两种方法比较
- python ── 遍历dict的两种方法比较
- python两种遍历字典(dict)的方法比较
- python两种遍历字典(dict)的方法比较
- java遍历文件夹的两种方法
- 遍历文件夹的两种方法
- Java遍历文件夹的两种方法
- python遍历文件夹——两种遍历本地文件记录文件夹个数、文件数及文件大小的方法
- 遍历文件夹的方法比较
- HashMap的两种遍历方法比较
- Python 遍历文件夹的方法:
- python遍历数组的两种方法
- python遍历数组的两种方法
- python编程细节──遍历dict的两种方法比较
- 递归实现遍历文件夹的两种方法
- python中的@与__call__()函数
- 双缓冲技术
- 日常Exception(二):Errors occurred during the build. Errors running builder 'DeploymentBuilder' on ...
- spring单元测试
- cmake构建工程时出现『1>LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrup
- Python遍历文件夹的两种方法比较
- css3+jsvascript 制作图片跑马灯
- 着重讲解------‘’足球论之事务的隔离性“
- 新建2个学生类,输出名字和年龄
- java Properties获取本地文件的变量
- CSS 浏览器兼容 hack法
- java中System.getProperty的用法
- 旧键盘打字(20)
- 72-外传篇 3