python中如何利用os .listdir和os .walk获取文件路径
更新时间:2024-01-12前言
在Python中,我们可以使用os.listdir()
和os.walk()
函数来获取文件路径。这两个函数可以帮助我们遍历指定目录下的文件和文件夹,并返回它们的完整路径。
使用os.listdir()
os.listdir()
函数返回指定目录中的所有文件和文件夹的名称的列表。我们可以将这些名称与指定目录的路径拼接起来,以获取完整的文件路径。
import os def get_file_paths(directory): file_paths = [] for file_name in os.listdir(directory): file_path = os.path.join(directory, file_name) if os.path.isfile(file_path): file_paths.append(file_path) return file_paths # 示例用法 directory = '/path/to/directory' file_paths = get_file_paths(directory) print(file_paths)
使用os.walk()
os.walk()
函数可以递归地遍历指定目录以及其子目录中的所有文件和文件夹。它返回一个生成器对象,包含每个目录路径以及它们包含的所有文件和文件夹。
import os def get_file_paths(directory): file_paths = [] for root, directories, files in os.walk(directory): for file_name in files: file_path = os.path.join(root, file_name) file_paths.append(file_path) return file_paths # 示例用法 directory = '/path/to/directory' file_paths = get_file_paths(directory) print(file_paths)
总结
使用os.listdir()
和os.walk()
可以在Python中获取文件路径。使用os.listdir()
函数可以返回指定目录中的所有文件和文件夹的名称列表,并配合os.path.join()
函数来获取完整的文件路径。而os.walk()
函数可以递归地遍历指定目录及其子目录中的所有文件和文件夹,使用os.path.join()
函数将每个文件和目录与其所属的路径进行拼接,从而得到所有文件的完整路径。