Python有许多优秀的文件操作的库,其中os模块就是一个强大的操作系统接口。此文将带领大家了解使用Python os.listdir获取目录中的文件列表的方法。
一、Python os.listdir简介
os.listdir()是Python os模块中常用的一个方法。该方法可以取得一个目录中所有文件和文件夹的名称列表,返回值为一个列表。该方法的语法如下:
os.listdir(path)
其中,path参数代表要获取列表的文件夹路径。如果没有指定path参数,则默认返回当前目录下的文件列表。
二、使用Python os.listdir获取目录中的文件列表
假如我们需要取得某个文件夹中的文件和文件夹名称列表,我们可以使用os.listdir()方法。代码如下:
import os
path = '/Users/johnny/Downloads'
file_list = os.listdir(path)
print(file_list)
上述代码中,我们首先导入os模块,然后定义了一个path变量,该变量的值为要获取列表的文件夹路径。接着,我们调用os.listdir()方法,并传入文件夹路径,返回的结果赋值给变量file_list。
最后,我们通过print()函数输出file_list列表,即可得到文件夹中的所有文件和文件夹名称列表。
三、使用Python os.listdir获取目录中的文件列表的应用
1、遍历文件夹中的文件并进行相应处理
假如我们需要对文件夹中的文件逐一进行处理,我们可以使用os.listdir()方法来获取文件夹中的文件列表,并使用循环来遍历每一个文件,进行相应的处理。下面是一个简单的例子:
import os
path = '/Users/johnny/Downloads'
for file_name in os.listdir(path):
if file_name.endswith('.txt'):
with open(os.path.join(path, file_name)) as f:
print(f.read())
上述代码中,我们首先定义一个path变量,然后使用循环遍历路径中的每一个文件,并根据后缀名为".txt"的文件进行相关处理。如果文件后缀名为".txt",则读取文件内容并输出。
2、获取文件夹中的所有.txt文件名称列表
假如我们需要获取文件夹中的所有.txt文件名称列表,我们可以使用os.listdir()方法来获取文件夹中的所有文件,然后使用列表推导式来筛选出我们需要的文件名称列表。下面是一个简单的例子:
import os
path = '/Users/johnny/Downloads'
txt_file_list = [file_name for file_name in os.listdir(path) if file_name.endswith('.txt')]
print(txt_file_list)
上述代码中,我们首先定义一个path变量,然后使用os.listdir()方法获取文件夹中的所有文件名列表。接着,使用列表推导式来筛选出后缀名为".txt"的文件名列表,并将结果保存到变量txt_file_list中。最后,使用print()函数输出txt_file_list,即可得到文件夹中所有.txt文件的名称列表。
总结:
Python os模块中的os.listdir()方法可以获取指定目录下的全部文件及子目录名称列表。通过对列表进行操作,可以进行多种文件操作。同时,需要注意文件路径对方法的影响。