Python获取文件夹下的文件和子文件夹
来源:互联网 发布:淘宝金牌卖家权重高吗 编辑:程序博客网 时间:2024/05/21 17:34
笔者小白在写代码的时候遇到的这样的问题,就是说需要根据文件夹的路径获取该文件夹下面的所有的文件和子文件夹。这里就介绍python的os模块中的两个函数:os.walk() 、os.listdir()。
os.walk()
该函数的原型是: os.walk(top, topdown=Ture, onerror=None, followlinks=False)
该函数没有返回值。
参数 1. top -- 根目录下的每一个文件夹(包含它自己), 产生3-元组 (dirpath, dirnames, filenames)【文件夹路径, 文件夹名字, 文件名】。 2. topdown --可选,为True或者没有指定, 一个目录的的3-元组将比它的任何子文件夹的3-元组先产生 (目录自上而下)。如果topdown为 False, 一个目录的3-元组将比它的任何子文件夹的3-元组后产生 (目录自下而上)。 3. onerror -- 可选,是一个函数; 它调用时有一个参数, 一个OSError实例。报告这错误后,继续walk,或者抛出exception终止walk。 4. followlinks -- 设置为 true,则通过软链接访问目录。
函数执行之后得到一个三元tupple(dirpath, dirnames, filenams。
- dirpath:string,是当前目录的路径;
- dirnames:list, 是当前路径下所有的子文件夹名字;
- filenames:list, 是当前路径下所有的非目录子文件的名字。
要获取完整的路径,dirnames和filenames是不包含路径信息的,可以使用
os.path.join(dirpath, dirnames)
获得文件的完整路径。
代码示例:
#!/usr/bin/python# -*- coding: UTF-8 -*-import osfor root, dirs, files in os.walk(".", topdown=False): for name in files: print(os.path.join(root, name)) for name in dirs: print(os.path.join(root, name))
当需要特定类型的文件时,代码如下:
# -*- coding: utf-8 -*- import os def file_name(file_dir): L=[] for dirpath, dirnames, filenames in os.walk(file_dir): for file in filenames : if os.path.splitext(file)[1] == '.jpg': L.append(os.path.join(dirpath, file)) return L
其中os.path.splitext()函数将路径拆分为文件名+扩展名,例如os.path.splitext(“E:/lena.jpg”)将得到”E:/lena“+”.jpg”。
os.listdir()
os.listdir()函数返回指定路径下的文件和文件夹列表。
代码示例:
#!/usr/bin/python# -*- coding: UTF-8 -*-import os, sys# 打开文件path = "/var/www/html/"dirs = os.listdir( path )# 输出所有文件和文件夹for file in dirs: print file
参考资料:
1、http://blog.csdn.net/lsq2902101015/article/details/51305825 2017.8.4
阅读全文
1 0
- Python获取文件夹下的文件和子文件夹
- 获取文件夹下的文件和文件夹
- Python语言: 删除文件夹下所有文件和子文件夹
- python如何获取一个文件夹内包括子文件夹所有文件的名字和路径
- [python]抓取文件夹的所有文件,包括子文件夹和子文件夹的文件
- 遍历一个文件夹下所有的文件和子文件夹
- 遍历一个文件夹下的所有文件和子文件夹
- 遍历一个文件夹下的所有文件和子文件夹
- 删除文件夹下的所有文件和子文件夹
- php遍历目标文件夹下的文件和子文件夹
- JAVA之File类 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件
- JAVA之File类 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件
- 遍历文件夹下的文件夹和子文件,遍历文件夹删除文件夹及其下面的所有子文件
- VBA获取某文件夹下所有文件和子文件目录的文件
- python使用os.walk和os.path.join来遍历文件夹的文件(包括子文件夹下的文件)
- python使用os.walk和os.path.join来遍历文件夹的文件(包括子文件夹下的文件)
- python使用os.walk和os.path.join来遍历文件夹的文件(包括子文件夹下的文件)
- 获取一个路径下的所有文件及其子文件,子文件夹下的子文件....
- EditText禁止输入表情符号
- 15. 3Sum
- ajax工作原理
- 00740043X_2015_T2 C++语言程序设计基础 Lab 2
- CSS规范
- Python获取文件夹下的文件和子文件夹
- pcsurgeon.exe逆向分析
- Hive在spark2.0.0启动时无法访问../lib/spark-assembly-*.jar: 没有那个文件或目录的解决办法
- 关于Lombok的hashCode方法
- 【HTML】怎样使用a标签以post方式提交
- 用python批量获取微信头像
- fio 测试
- xampp apache 本机多虚拟机配置
- 日志记录重定向到文件