python3_获得文件大小

发布时间 2023-08-23 20:36:51作者: 小鱼小鱼hi

1、os.path.getsize(file_path),返回文件字节大小,int类型。

import os
file_size = os.path.getsize('/home/pi/jodie/log/jodie-test.log')
print(file_size, type(file_size))

#947642 <class 'int'>
# 显示文件大小为:925kB

2、os.stat(file_path).st_size,返回文件字节大小,int类型。

import os
file_size = os.stat('/home/pi/jodie/log/jodie-test.log')
print(file_size, type(file_size))
'''
os.stat_result(st_mode=33188, st_ino=924932, st_dev=45826, st_nlink=1, st_uid=0, st_gid=0, st_size=947642, st_atime=1690468244, st_mtime=1690510317, st_ctime=1692792387) <class 'os.stat_result'>
'''
file_size = os.stat('/home/pi/jodie/log/jodie-test.log').st_size
print(file_size, type(file_size))

#947642 <class 'int'>

3、

  • open函数打开文件,并将生成的对象保存在变量中。当您打开文件时,光标会移动到文件的开头。
  • 文件对象支持seek()方法将指针移动到所需的位置。简而言之,它用于将光标设置为文件的结束位置。它需要两个参数:开始和结束位置。
  • 文件对象包含一个 tell() 方法,可用于检索当前光标位置,等于光标更改的字节数。因此,此函数以字节为单位返回文件大小。
file = open('/home/pi/jodie/log/jodie-test.log')
ile_size = file.seek(0, os.SEEK_END)
print(file_size, type(file_size))
# 947642 <class 'int'>
print(file.tell(), type(file.tell()))
# 947642 <class 'int'>

4、Path对象的stat()函数返回文件特征,如“st_mode”、“st_dev”等。此外,统计方法的“st_size”属性以字节为单位返回文件大小

from pathlib import Path
Path('/home/pi/jodie/log/jodie-test.log').stat()
'''
os.stat_result(st_mode=33188, st_ino=924932, st_dev=45826, st_nlink=1, st_uid=0, st_gid=0, st_size=947642, st_atime=1690468244, st_mtime=1690510317, st_ctime=1692792387)
'''
file_size = Path('/home/pi/jodie/log/jodie-test.log').stat().st_size
print(file_size, type(file_size))
# 947642 <class 'int'>