📜  蓝光大小 - Python (1)

📅  最后修改于: 2023-12-03 15:11:53.893000             🧑  作者: Mango

蓝光大小 - Python

在数字媒体的世界里,蓝光是一种高清影像媒体格式,通常以BDMV文件夹的形式存储在蓝光光盘或硬盘中。计算蓝光大小是一个常见的需求,特别是在上传或下载高清影片时,需要知道其大小以便做出更好的决策。在Python中,我们可以使用以下代码来计算蓝光大小。

import os

def get_folder_size(folder_path):
    """
    获取文件夹大小
    """
    total_size = 0
    with os.scandir(folder_path) as entries:
        for entry in entries:
            if entry.is_file():
                total_size += entry.stat().st_size
            elif entry.is_dir():
                total_size += get_folder_size(entry.path)
    return total_size


def format_size(size):
    """
    格式化文件大小为易读的字符串
    """
    for unit in ['B', 'KB', 'MB', 'GB', 'TB']:
        if size < 1024:
            return f"{size:.2f} {unit}"
        size /= 1024

    return f"{size:.2f} PB"


if __name__ == "__main__":
    folder_path = "path/to/bdmv/folder"
    bdmv_size = get_folder_size(folder_path)
    print(f"蓝光大小: {format_size(bdmv_size)}")

其中,get_folder_size函数是递归地计算文件夹大小的函数,format_size函数则将文件大小格式化为易读的字符串。在主程序中,我们将要计算的蓝光文件夹路径传递给get_folder_size函数,然后将其大小用format_size格式化并输出。

以上代码输出的结果示例如下:

蓝光大小: 39.11 GB

在实际应用中,我们可以将以上代码封装为一个函数,以便在需要时直接调用。