在Python编程中,获取文件列表是一个常见的操作。Python的os模块下有一个listdir函数,可以很容易地实现获取指定目录下的所有文件和文件夹列表。本文将详细介绍如何使用Python listdir函数获取文件列表。
一、什么是Python listdir函数
listdir是Python的os模块中的一个函数,用于返回指定目录下的文件和文件夹列表。
语法:
os.listdir(path)
其中,path为要获取文件列表的目录。返回值是一个列表,其中包含了该目录下所有文件和文件夹的名称。
二、如何使用Python listdir函数
1. 获取指定目录下的所有文件和文件夹列表
在Python中使用os模块的listdir函数可以很方便的获取指定目录下的所有文件列表:
import os path = "C:/Users/Administrator/Desktop" #指定文件目录 files= os.listdir(path) #得到文件夹下的所有文件名称 for file in files: #遍历文件夹 print(file) #打印文件名
上述代码中,指定了一个文件目录path,然后使用os模块的listdir函数获取该目录下的所有文件和文件夹的名称,并使用for循环打印每一个文件和文件夹名称。
2. 获取指定目录下的所有文件列表
如果需要获取指定目录下的所有文件列表(不包括子目录),可以使用os模块的path模块下的isfile函数判断是否为文件。更改上面代码如下:
import os path = "C:/Users/Administrator/Desktop" #指定文件目录 files= os.listdir(path) #得到文件夹下的所有文件名称 for file in files: #遍历文件夹 if os.path.isfile(file): #判断是否是文件 print(file) #打印文件名
上述代码中,使用os模块的path模块下的isfile函数判断是否为文件,如果是文件则打印文件名。
3. 获取指定目录下的所有文件夹列表
如果需要获取指定目录下的所有文件夹列表(不包括子目录),可以使用os模块的path模块下的isdir函数判断是否为文件夹。更改上面代码如下:
import os path = "C:/Users/Administrator/Desktop" #指定文件目录 files= os.listdir(path) #得到文件夹下的所有文件名称 for file in files: #遍历文件夹 if os.path.isdir(file): #判断是否是文件夹 print(file) #打印文件夹名
上述代码中,使用os模块的path模块下的isdir函数判断是否为文件夹,如果是文件夹则打印文件夹名。
4. 获取指定目录下的所有指定类型的文件列表
如果需要获取指定目录下的所有指定类型的文件列表,可以使用os模块的path模块下的split和extsep函数来获取文件扩展名,判断是否为指定的类型。更改上面代码如下:
import os path = "C:/Users/Administrator/Desktop" #指定文件目录 file_extension = ".txt" #指定文件类型 files= os.listdir(path) #得到文件夹下的所有文件名称 for file in files: #遍历文件夹 filename, extension = os.path.splitext(file) #分离文件名和扩展名 if extension == file_extension: #判断是否是指定类型的文件 print(file) #打印文件名
上述代码中,使用os模块的path模块下的split和extsep函数分离文件路径和扩展名,然后判断扩展名是否为指定类型。
三、总结
本文介绍了Python中使用listdir函数获取文件列表的方法。具体包括了如何获取指定目录下的所有文件和文件夹列表,如何获取指定类型的文件列表,以及如何获取指定目录下的所有文件夹列表。
在实际开发中,listdir函数非常实用,可以用于很多文件处理的场景,如遍历文件夹,删除文件,复制文件等。因此,我们建议Python开发者熟练掌握listdir函数的使用方法。