欢迎访问宙启技术站
智能推送

Python中ListDir()函数的实例应用与案例分析

发布时间:2024-01-04 01:37:57

ListDir()函数是Python中用于获取指定目录下所有文件和文件夹的函数。该函数属于os模块,并且返回一个包含指定目录下所有文件和文件夹名称的列表。

ListDir()函数的语法格式如下:

os.listdir(path)

其中,path参数为一个字符串,表示需要获取文件和文件夹列表的目录路径。如果不传入该参数,默认获取当前工作目录下的文件和文件夹列表。

下面我们通过实例和案例分析来进一步了解ListDir()函数的使用和应用。

【实例】获取指定目录下所有文件和文件夹的列表

import os

# 获取当前工作目录的文件和文件夹列表
current_dir = os.getcwd()
dir_list = os.listdir(current_dir)

print("当前工作目录中的文件和文件夹列表:")
for item in dir_list:
    print(item)

运行以上代码,输出结果如下:

当前工作目录中的文件和文件夹列表:
file1.txt
file2.txt
folder1
folder2

以上代码中,我们首先通过os.getcwd()函数获取当前工作目录,并将结果赋值给变量current_dir。然后,使用os.listdir(current_dir)函数获取当前工作目录下所有文件和文件夹的列表,并将结果赋值给变量dir_list。

最后,我们通过遍历dir_list,打印出当前工作目录下所有文件和文件夹的名称。

【案例分析】统计指定目录下文件和文件夹的个数

import os

def count_files_and_folders(path):
    file_count = 0
    folder_count = 0

    # 获取指定目录的文件和文件夹列表
    file_list = os.listdir(path)

    # 遍历文件和文件夹列表
    for item in file_list:
        # 判断该项是文件还是文件夹
        if os.path.isfile(os.path.join(path, item)):
            file_count += 1
        else:
            folder_count += 1

    return file_count, folder_count

# 指定目录路径
dir_path = "/path/to/directory"

# 统计文件和文件夹的个数
files, folders = count_files_and_folders(dir_path)

print("指定目录下的文件个数:", files)
print("指定目录下的文件夹个数:", folders)

运行以上代码,输出结果如下:

指定目录下的文件个数: 10
指定目录下的文件夹个数: 5

以上代码中,我们首先定义了一个count_files_and_folders()函数,该函数接受一个路径参数path,并且返回文件个数和文件夹个数。

在该函数中,我们通过使用os.listdir(path)函数获取指定目录path下的文件和文件夹列表,并将结果赋值给变量file_list。

然后,我们遍历file_list,使用os.path.isfile()函数判断每一项是文件还是文件夹。如果是文件,则将文件计数器file_count加1;如果是文件夹,则将文件夹计数器folder_count加1。

最后,我们返回文件个数和文件夹个数。

在主程序中,我们指定了一个目录路径dir_path,并调用count_files_and_folders()函数获取该目录下文件和文件夹的个数。然后,我们打印文件个数和文件夹个数。

通过以上案例分析,我们可以看到,ListDir()函数可以很方便地获取指定目录下的文件和文件夹列表,并且可以根据需求进行进一步处理和分析。