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

推荐文章

  • python类型声明的方法是什么

    Python是一种动态类型语言,因此不需要显式声明变量的类型。变量的类型是根据其赋值来确定的。Python使用强大的类型推断来确定变量的类型。例如,当将整数赋值给...

  • python怎么判断一年中的第几天

    可以使用datetime库中的date类来判断一年中的第几天。下面是一个示例代码:
    from datetime import date
    def day_of_year(year, month, day):
    d =...

  • python subprocess的用法是什么

    subprocess 是 Python 内置的库,用于创建和管理新的子进程。它提供了一种在 Python 程序中调用外部命令和程序的方法。
    subprocess 模块的主要用法有以下几...

  • python怎么删除文件首行内容

    要删除文件的首行内容,可以使用以下代码:
    # 打开文件并读取内容
    with open('文件路径', 'r') as f:
    lines = f.readlines()
    # 删除首行内容...

  • 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等监控系统的实时内存使用情况,观察内存占用是否逐渐增加...