如何在 Python 中检查文件大小
Azaz Farooq
2023年1月30日
2020年11月24日
-
在 Python 中使用
pathlib
模块检查文件大小 -
在 Python 中使用
os.path()
方法检查文件大小 -
在 Python 中使用
os.stat
方法检查文件大小 - 在 Python 中使用文件对象方法检查文件大小
文件是存储在一个单位中的不同数据的集合。文件大小评估一个文件在硬盘等存储介质中需要多少空间。它可以用不同的内存单位来衡量,如千字节(kB)、百万字节(MB)和千兆字节(GB)等。
本文将介绍在 Python 中检查文件大小的不同方法。
在 Python 中使用 pathlib
模块检查文件大小
Path
对象的 stat()
方法返回文件的详细属性,如 st_mode
、st_dev
等。stat
方法的 st_size
属性以字节为单位给出文件的大小。
完整的示例代码如下。
from pathlib import Path
Path(r'C:\test\file1.txt').stat()
file_size =Path(r'C:\test\file1.txt').stat().st_size
print("The file size is:", file_size,"bytes")
我们必须将 r
放在前面以使文件路径成为原始字符串;否则,我们需要转义反斜杠,如 C:\\test\\file1.txt
。
输出:
The file size is: 40 bytes
在 Python 中使用 os.path()
方法检查文件大小
这个 Python 的模块 os.path
有一个函数 getsize
,它以文件路径为参数,以字节为单位返回文件大小。
完整的示例代码如下。
import os
file_size = os.path.getsize(r'C:\test\file1.txt')
print('File Size:', file_size, 'bytes')
输出:
File Size: 20 bytes
在 Python 中使用 os.stat
方法检查文件大小
这个 Python os
模块还提供了一个 stat
方法来检查文件大小。它还将文件路径作为参数并返回一个结构类型的对象。这个对象有一个 st_size
属性,以字节为单位给出文件大小。
完整的示例代码如下。
import os
file_size = os.stat(r'C:\test\file1.txt')
print('File Size is', file_size.st_size, 'bytes')
输出:
Size of file is 40 bytes
在 Python 中使用文件对象方法检查文件大小
我们将文件路径传递给 open()
函数,并获得可用于文件处理操作的文件对象。
完整的示例代码如下。
import os
with open(r'C:\test\file1.txt') as file_obj:
file_obj.seek(0, os.SEEK_END)
print('File Size is', file_obj.tell(), 'bytes')
输出:
File Size is 40 bytes
所需文件被打开后,文件光标在文件的起始处。文件对象的 seek
方法将把文件光标设置到所需位置。
file_obj.seek(0, os.SEEK_END)
seek()
方法的第一个参数是 File
对象的偏移量,第二个参数是文件的参考位置。os.SEEK_END
指定了到文件对象末端的参考位置。
因此,上述脚本行将光标设置为文件对象的末端。
文件对象的 tell()
方法返回当前光标位置。因为光标已经被设置为结束,所以这里的结果等于文件大小。