python 查询整个磁盘或目录系统,并将文件和文件夹信息收集到对应的字典格式中

查询整个磁盘或目录系统,并将文件和文件夹信息收集到对应的字典格式中:

python
import os

def collect_directory_info(path):
    result = {'files': [], 'directories': []}

    # 遍历目录
    for root, dirs, files in os.walk(path):
        for file in files:
            file_path = os.path.join(root, file)
            file_info = {
                'name': file,
                'path': file_path,
                'size': os.path.getsize(file_path),
                'extension': os.path.splitext(file)[1]
            }
            result['files'].append(file_info)

        for dir in dirs:
            dir_path = os.path.join(root, dir)
            dir_info = {
                'name': dir,
                'path': dir_path,
                'size': 0,
                'extension': ''
            }
            result['directories'].append(dir_info)

    return result
使用上述函数,你可以提供一个路径作为参数,例如path = '/home/user/Documents',然后调用collect_directory_info(path)函数,它将返回一个包含文件和文件夹信息的字典。其中,字典的files键对应一个列表,列表中的每个元素都是一个文件的字典,包含文件名、路径、大小和扩展名等信息。字典的directories键也对应一个列表,列表中的每个元素都是一个文件夹的字典,包含文件夹名、路径、大小和扩展名(为空)等信息。

请注意,这个函数会递归地遍历目录,因此可能需要一些时间来完成,尤其是当目录结构较大时。在执行之前,请确保有足够的权限来访问指定的路径

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值