📌  相关文章
📜  python 获取人类可读的文件大小 - Python (1)

📅  最后修改于: 2023-12-03 14:46:18.007000             🧑  作者: Mango

Python 获取人类可读的文件大小

简介

在开发中经常需要获取文件的大小,但是通常情况下,文件大小是以字节为单位来表示的,这对我们来说不太直观。因此,需要将文件大小转换为人类可读的形式。

本文将介绍如何使用 Python 获取人类可读的文件大小。

实现

以下是一个简单的函数,用于将字节数转换为人类可读的形式:

import math

def human_size(size_bytes):
    """
    将字节数转换为人类可读的形式
    :param size_bytes: 文件大小(字节)
    :return: 人类可读的文件大小
    """
    if size_bytes == 0:
        return "0B"
    size_name = ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]
    i = int(math.floor(math.log(size_bytes, 1024)))
    p = math.pow(1024, i)
    s = round(size_bytes / p, 2)
    return "%s %s" % (s, size_name[i])

该函数首先检查文件的大小是否为零,如果是,则返回“0B”。否则,它将文件大小转换为人类可读的形式,并返回一个字符串。

该函数使用 Python 的 math 库来计算以 1024 为基础的对数,然后使用 round 函数对文件大小进行四舍五入。

使用

使用该函数非常简单。只需传入文件大小(字节)的整数值,即可获得人类可读的文件大小。

以下是一个简单的示例:

file_size = 1234567890
print(human_size(file_size))

输出结果为:

1.15 GB
总结

现在,你已经了解了如何使用 Python 将文件大小转换为人类可读的形式。该函数非常简单,但它可以节省你很多时间,并使计算得到的结果更加可读。