最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
python读取指定目录下所有文件
时间:2013-05-31 编辑:简简单单 来源:一聚教程网
在python的应用过程中,经常会用到获取文件列表的方法,常规的做法是这样的
import os
os.os.listdir(path)
然后再一个一个的分析文件和目录
通过和dos命令dir的巧妙结合,可以很轻松的做到这点,看示例
获取目录下所有文件方法
cmd = "dir /A-D /B"
list_file = os.popen(cmd).readlines()
cmd命令解释为 /A-D 选取所有的非目录文件列表 /B 只使用空格分隔开所有的文件名
在通过readlines方法,获取到包含所有文件的list,这样就得到指定目录下的所有文件了
同时附上获取所有目录的方法:
cmd = "dir /AD /B"
list_file = os.popen(cmd).readlines()
例
代码如下 | 复制代码 |
import os,glob def get_file_list(dir_path, extension_list): ''' fuction: get_file_list(dir_path,extension_list) parms: dir_path - a string of directory full path. eg. 'D:user' extension_list - a list of file extension. eg. ['zip'] return: a list of file full path. eg. ['D:user1.zip', 'D:user2.zip'] ''' os.chdir(dir_path) file_list = [] for extension in extension_list: extension = '*.' + extension file_list += [os.path.realpath(e) for e in glob.glob(extension) ] return file_list |
示例,目录结构如下:
F:DOWNLOADSPIC
1.jpg
1.txt
2.jpg
2.txt
3.jpg
3.txt
4.jpg
5.jpg
6.jpg
代码如下 | 复制代码 |
dir_path = 'F:downloadspic' extension_list = ['jpg'] a = get_file_list(dir_path, extension_list) print('extension is 'jpg'') for file in a: print(file) print('n') extension_list = ['txt'] a = get_file_list(dir_path, extension_list) print('extension is 'txt'') for file in a: print(file) print('n') extension_list = ['jpg','txt'] a = get_file_list(dir_path, extension_list) print('extension is 'jpg' and 'txt'') for file in a: print(file) |
输出:
extension is 'jpg'
F:downloadspic1.jpg
F:downloadspic2.jpg
F:downloadspic3.jpg
F:downloadspic4.jpg
F:downloadspic5.jpg
F:downloadspic6.jpg
extension is 'txt'
F:downloadspic1.txt
F:downloadspic2.txt
F:downloadspic3.txt
extension is 'jpg' and 'txt'
F:downloadspic1.jpg
F:downloadspic2.jpg
F:downloadspic3.jpg
F:downloadspic4.jpg
F:downloadspic5.jpg
F:downloadspic6.jpg
F:downloadspic1.txt
F:downloadspic2.txt
F:downloadspic3.txt
python 读取一个目录下的所有目录和文件
代码如下 | 复制代码 |
#!/usr/bin/python
import os
if __name__ == '__main__': |
-
下一个: ruby发送邮件的实例程序代码
相关文章
- 读取目录下的所有文件(包括子目录下的所有文件) 01-12
- PHP导出数据超时的优化建议解读 10-31
- PHP之mysql位运算解析 10-31
- Laravel实现登录跳转功能解析 10-31
- php双向队列解读 10-31
- Laravel异常上下文解决教程 10-24