python米和厘米转换代码_Python字节单位转换实例

from enum import Enum

class Values():

values={'B':1}

@staticmethod

def getValues():

if len(Values.values)<=1:

kbunits=['KB','MB','GB','TB','PB','EB','ZB','YB','BB','NB','DB']

kibunits=['KiBi','MiB','GiB','TiB','PiB','EiB','ZiB','YiB','BiB','NiB','DiB']

for index,unit in enumerate(kibunits):

Values.values[unit]=1<

for index,unit in enumerate(kbunits):

Values.values[unit]=10**((index+1)*3)

return Values.values

@staticmethod

def get(key):

return Values.getValues().get(key)

class Units(Enum):

def __new__(cls,name):

obj = object.__new__(cls)

print (name)

obj._value_=Values.get(name)

return obj

B=('B')

KB=('KB')

KiB=('KiBi')

MB=('MB')

MiB=('MiB')

GB=('GB')

GiB=('GiB')

TB=('TB')

TiB=('TiB')

PB=('PB')

PiB=('PiB')

EB=('EB')

EiB=('EiB')

ZB=('ZB')

ZiB=('ZiB')

YB=('YB')

YiB=('YiB')

BB=('BB')

BiB=('BiB')

NB=('NB')

NiB=('NiB')

DB=('DB')

DiB=('DiB')

class ByteUnitConversionUtil():

__defaultformat="%.5f"

@staticmethod

def convert(value,unit=Units.B,format=__defaultformat):

if(unit==Units.B):

return str(value).split(".",2)[0]+unit.name

else:

return (format % (value/unit.value))+unit.name

if __name__=="__main__":

print(ByteUnitConversionUtil.convert(12313213453,Units.KiB,"%.2f"))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值