如何检查文件大小?


文件用于根据用户需求存储某些数据。文件可以包含任何类型的信息,例如音频、文本、图像、视频或程序。根据文件中存在的数据,文件的大小会有所不同。

文件的大小以比特或字节为单位测量。比特是最小的信息单位,通常由单个值表示:0 或 1。字节用于测量文件中的数据量,字节由 8 位表示。在 Python 中有几种方法可以检查文件大小。让我们一一来看。

使用 os.path 模块

Python 中的 os.path 模块提供了一个名为 getsize() 的函数,用于查找文件的大小。

语法

以下是使用os.path中的getsize()方法查找文件大小的语法:

from os import path
path.getsize(file_name)

其中,

  • Os 是 Python 中的模块。

  • path 是 os 模块中的方法。

  • getsize 是用于计算文件大小的函数。

  • file_name 是输入文件。

示例

在此示例中,我们将一个文件传递给os.path.getsize()方法,然后将以字节为单位返回文件大小。

from os import path
file_location = "sample.py"
file_size = path.getsize(file_location)
print("File size in bytes:", file_size)

输出

以下是执行上述程序后产生的输出:

File size in bytes: 34

使用 os.stat() 方法

在 Python 中,os.stat() 方法接受文件路径作为参数,并返回一个列表对象,其中包含描述其结构的各种属性。其中一个属性是 st_size,它包含文件的大小。

示例

在下面的示例中,我们使用st_size属性检索文件的大小:

import os
file_path = "sample.py"
file_stats = os.stat(file_path)
file_size = file_stats.st_size
print("File size in bytes:", file_size)

输出

以下是使用 os.stat() 模块计算的文件大小的输出。

File size in bytes: 34

使用 pathlib 模块

Python 还提供了另一个模块 pathlib,它提供了相同的函数 stat().st_size 来计算文件的大小。

from pathlib import Path
file_path = Path("articles.ipynb")
file_size = file_path.stat().st_size
print("File size in bytes:", file_size)

输出

以下是上述代码的输出,返回文件的大小。

使用 os.fstat() 方法

使用 Python 中的 os.fstat() 方法,我们可以找到文件的大小。

fstat() 方法用于检索文件描述符的状态。它接受文件描述符作为参数,并返回一个列表对象,其中包含描述与给定文件描述符对应的文件状态的属性。您可以使用 st_size 从这些属性中检索文件大小。

from os import fstat
file_path = "articles.ipynb"
with open(file_path, "rb") as f:
    file_stats = fstat(f.fileno())
    file_size = file_stats.st_size
print("File size in bytes:", file_size)

输出

以下输出显示了计算出的文件大小:

File size in bytes: 16224

注意 - 如果我们想查找文件的大小,我们可以使用上述任何一种方法,并将文件所在的完整文件路径作为输入参数传递给函数。

更新于: 2023年8月9日

356 次浏览

开启你的职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.