本文实例讲述了python获取指定目录下所有文件名列表的方法。分享给大家供大家参考。具体实现方法如下:
这里python代码实现获取文件名列表的功能,可以指定文件中包含的字符,方便提取特定类型的文件名列表:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
# -*- coding: utf-8 -*- #~ #------------------------------------------------------------------ #~ module:wlab #~ Filename:wgetfilelist.py #~ Function : #~ def IsSubString(SubStrList,Str) #~ def GetFileList(FindPath,FlagStr=[]): #~ 功能:读取指定目录下特定类型的文件名列表 #~ Data: 2013-08-08,星期四 #~ Author:吴徐平 #~ Email:wxp07@qq.com #~ #------------------------------------------------------------------ #~ #------------------------------------------------------------------ def IsSubString(SubStrList, Str ): ''''' #判断字符串Str是否包含序列SubStrList中的每一个子字符串 #>>>SubStrList=['F','EMS','txt'] #>>>Str='F06925EMS91.txt' #>>>IsSubString(SubStrList,Str)#return True (or False) ''' flag = True for substr in SubStrList: if not (substr in Str ): flag = False return flag #~ #---------------------------------------------------------------------- def GetFileList(FindPath,FlagStr = []): ''''' #获取目录中指定的文件名 #>>>FlagStr=['F','EMS','txt'] #要求文件名称中包含这些字符 #>>>FileList=GetFileList(FindPath,FlagStr) # ''' import os FileList = [] FileNames = os.listdir(FindPath) if ( len (FileNames)> 0 ): for fn in FileNames: if ( len (FlagStr)> 0 ): #返回指定类型的文件名 if (IsSubString(FlagStr,fn)): fullfilename = os.path.join(FindPath,fn) FileList.append(fullfilename) else : #默认直接返回所有文件名 fullfilename = os.path.join(FindPath,fn) FileList.append(fullfilename) #对文件名排序 if ( len (FileList)> 0 ): FileList.sort() return FileList |
可以使用pip在线安装wlab
1
|
pip install wlab |
还是给个图吧:
希望本文所述对大家的Python程序设计有所帮助。