Il existe divers extraits sur le web qui vous donnerait une fonction pour retourner la taille lisible humain de taille octets :
Mais y at-il une bibliothèque Python qui permet cela ?
Il existe divers extraits sur le web qui vous donnerait une fonction pour retourner la taille lisible humain de taille octets :
Mais y at-il une bibliothèque Python qui permet cela ?
Aborder ces "trop petit une tâche d'exiger une bibliothèque" de l'émission par une mise en œuvre directe:
def sizeof_fmt(num):
for x in ['bytes','KB','MB','GB','TB']:
if num < 1024.0:
return "%3.1f %s" % (num, x)
num /= 1024.0
Exemple:
>>> sizeof_fmt(168963795964)
'157.4GB'
par Fred Cirera
Mise à jour: Légèrement tordu extrait de travaille avec de très grandes tailles. Quelque chose de plus grand que celui de la TUBERCULOSE sera affiché dans le Sct.
def sizeof_fmt(num):
for x in ['bytes','KB','MB','GB']:
if num < 1024.0:
return "%3.1f%s" % (num, x)
num /= 1024.0
return "%3.1f%s" % (num, 'TB')
Mise à jour 2: Une autre légère tweak pour gérer les négatifs des tailles de fichier (utile quand on traite avec une taille de fichier deltas).
def sizeof_fmt(num):
for x in ['bytes','KB','MB','GB']:
if num < 1024.0 and num > -1024.0:
return "%3.1f%s" % (num, x)
num /= 1024.0
return "%3.1f%s" % (num, 'TB')
Voici ma version. Il n’utilise pas une boucle for. Il a la complexité constante, O (1) et est en théorie plus efficace que les réponses ici qu’utiliser une boucle for.
Pour le rendre que plus clair ce qui se passe, nous pouvons omettre le code pour la chaîne mise en forme. Voici les lignes qui effectuent le travail :
Une telle bibliothèque est hurry.filesize.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.