117.info
人生若只如初见

怎么用python统计文件类型及数量

要统计文件类型及数量,你可以使用Python的os模块来遍历文件夹中的文件,然后使用文件的后缀来判断文件类型。以下是一个示例代码:

import os

def count_file_types(folder_path):
    file_types = {}

    for root, dirs, files in os.walk(folder_path):
        for file in files:
            file_name, file_ext = os.path.splitext(file)
            if file_ext:
                file_type = file_ext[1:].lower()
                if file_type in file_types:
                    file_types[file_type] += 1
                else:
                    file_types[file_type] = 1

    return file_types

folder_path = 'path/to/folder'
file_types = count_file_types(folder_path)

for file_type, count in file_types.items():
    print(f"{file_type}: {count}")

在上述示例代码中,count_file_types函数接受一个文件夹路径作为参数,使用os.walk遍历该文件夹中的所有文件。对于每个文件,使用os.path.splitext函数来获取文件的文件名和后缀。然后,将后缀转换为小写,并使用字典file_types来记录每个文件类型的数量。最后,遍历file_types字典,输出每个文件类型及其对应的数量。

请注意,上述代码只会统计文件的后缀作为文件类型。如果你需要更精确的文件类型信息,可以使用第三方库如mimetypes来识别文件的MIME类型。

未经允许不得转载 » 本文链接:https://www.117.info/ask/feb45AzsLBQBQDFQ.html

推荐文章

  • linux的python如何进行进程管理

    在Linux中,可以使用Python的内置库os和subprocess进行进程管理 使用os.system()执行外部命令: import os # 执行外部命令,例如:ls
    os.system("ls") 使用...

  • linux的python怎样进行系统调用

    在Linux中,Python可以通过os和sys库进行系统调用 使用os库: os库提供了许多与操作系统交互的函数。例如,要使用os.system()执行系统命令,可以这样做:
    i...

  • python中set怎样进行集合排序

    在Python中,可以使用sorted()函数对集合(set)进行排序。sorted()函数返回一个排序后的列表(list),而不是集合,因为集合本身是无序的。以下是一个示例:

  • python中set如何进行集合转换

    在Python中,可以使用集合(set)的内置方法进行集合转换。以下是一些常用的集合转换方法: 将列表转换为集合: my_list = [1, 2, 3, 4, 5]
    my_set = set(m...

  • springboot封装接口的方法是什么

    在Spring Boot中封装接口的方法有很多种,下面列举其中一种常用的方法:1. 创建一个接口类,定义接口的请求路径、请求方法和请求参数等信息。```javapublic inte...

  • linux调度策略怎么设置

    在Linux中,可以使用sched_setscheduler系统调用来设置进程的调度策略。该系统调用需要指定进程的PID、调度策略和调度参数。调度策略有以下几种:1. SCHED_OTHER...

  • mysql怎么查询表信息

    要查询MySQL表的信息,可以使用以下的SQL语句: 显示所有表的列表: SHOW TABLES; 该语句将返回数据库中所有表的列表。 显示表的详细信息: DESCRIBE table_name; ...

  • linux内存泄漏问题怎么排查

    要排查Linux中的内存泄漏问题,可以按照以下步骤进行:1. 监控内存使用情况:使用工具如top、free或htop等监控系统的实时内存使用情况,观察内存占用是否逐渐增加...