def humanize(n):
base=1000.0 # replace with 1024 if you want kib Mib etc
letters=['','k','M','G','T','P','E','Z','Y']
f=float(n)
for x in letters:
if f < base: break
f /= base
return '{:.3}{}b'.format(f,x) # change {}b to {}ib if working with kib etc.
def bytesto(bytes, to, bsize=1000):
a = {'k' : 1, 'm': 2, 'g' : 3, 't' : 4, 'p' : 5, 'e' : 6 }
r = float(bytes)
for i in range(a[to]):
r = r / bsize
return(r)
you can use above function to convert bytes to kb,mb,gb,tb
现在Mb通常指的是十进制的百万字节,Mib通常指的是1024*1024字节。这段代码很容易切换。你知道吗
print(bytesto(314575262000000, 'k')) # 314575262000.0 KB
print(bytesto(314575262000000, 'm')) # 314575262.0 MB
print(bytesto(314575262000000, 't')) # 314.575262 TB
相关问题 更多 >
编程相关推荐