Pour obtenir la taille d'un fichier en Python, il existe plusieurs solutions :
Avec getsize() method
Vous pouvez également utiliser la méthode getsize() du module os pour obtenir la taille d'un fichier. Cette méthode prend en argument un chemin d'accès ou une URL et renvoie sa taille en octets. Par exemple:
import os
file_size = os.getsize('filename.txt')
print(file_size)
donne
585989
en Byte.
Pour convertir un octet en Ko, par exemple.
1 Byte = 0.001 KB (in decimal)
Donc, pour obtenir la sortie en Ko :
file_size = os.getsize('filename.txt') * 0.001 # in KB
Avec stat() method
Pour obtenir la taille d'un fichier en Python, vous pouvez utiliser la méthode stat() du module os. Cette méthode renvoie un tuple contenant la taille du fichier, ainsi que d'autres informations telles que ses permissions et sa date de création. Pour obtenir la taille du fichier, utilisez l'attribut st_size de ce tuple. Par exemple:
import os
file_info = os.stat('filename.txt')
file_size = file_info.st_size
print(file_size)
donne
585989
Avec pathlib module
Alternativement, vous pouvez utiliser le module pathlib pour obtenir la taille d'un fichier. L'objet Path créé par ce module possède une méthode stat() qui renvoie un objet contenant des informations sur le fichier, y compris sa taille. Pour obtenir la taille du fichier, utilisez l'attribut .stat().st_size. Par exemple:
from pathlib import Path
file_info = Path('filename.txt').stat()
file_size = file_info.st_size
print(file_size)
donne
585989
Taille totale des fichiers avec une extension donnée
Pour obtenir tous les fichiers se terminant par .hdf, une solution consiste à utiliser glob().
import glob
import os
file_list = glob.glob('media/*.hdf')
ensuite, nous pouvons itérer sur tous les fichiers et obtenir la taille totale :
tot_size = 0
for file in file_list:
file_size = os.path.getsize(file) * 0.001 # in KB
tot_size += file_size
print( str( round(file_size,2) ) + ' KB')
donne
250728.912 KB
Références
Liens | Site |
---|---|
getsize() | docs.python.org |
pathlib | docs.python.org |
Bytes to KB Conversion | gbmb.org |