Python字节单位转换实例


Posted in Python onDecember 05, 2019

我就废话不多说了,直接上代码!

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<<(index+1)*10
      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"))

以上这篇Python字节单位转换实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python的Tornado框架实现一个简单的WebQQ机器人
Apr 24 Python
python中threading超线程用法实例分析
May 16 Python
Python多层嵌套list的递归处理方法(推荐)
Jun 08 Python
Python正则抓取网易新闻的方法示例
Apr 21 Python
详解python while 函数及while和for的区别
Sep 07 Python
docker django无法访问redis容器的解决方法
Aug 21 Python
关于django 1.10 CSRF验证失败的解决方法
Aug 31 Python
django formset实现数据表的批量操作的示例代码
Dec 06 Python
超全Python图像处理讲解(多模块实现)
Apr 13 Python
django为Form生成的label标签添加class方式
May 20 Python
python实现文法左递归的消除方法
May 22 Python
python 安装移动复制第三方库操作
Jul 13 Python
使用Python paramiko模块利用多线程实现ssh并发执行操作
Dec 05 #Python
Python使用指定字符长度切分数据示例
Dec 05 #Python
python从zip中删除指定后缀文件(推荐)
Dec 05 #Python
python3 求约数的实例
Dec 05 #Python
python生成特定分布数的实例
Dec 05 #Python
python 实现生成均匀分布的点
Dec 05 #Python
pd.DataFrame统计各列数值多少的实例
Dec 05 #Python
You might like
php microtime获取浮点的时间戳
2010/02/21 PHP
php数组函数序列之ksort()对数组的元素键名进行升序排序,保持索引关系
2011/11/02 PHP
PHP实现压缩图片尺寸并转为jpg格式的方法示例
2018/05/10 PHP
PHP序列化和反序列化深度剖析实例讲解
2020/12/29 PHP
Javascript 刷新全集常用代码
2009/11/22 Javascript
Javascript表达式中连续的 &amp;&amp; 和 || 之赋值区别
2010/10/17 Javascript
分享一个自己写的table表格排序js插件(高效简洁)
2011/10/29 Javascript
createElement与createDocumentFragment的点点区别小结
2011/12/19 Javascript
jquery ajax同步异步的执行最终解决方案
2013/04/26 Javascript
js 一个关于图片onload加载的事
2013/11/10 Javascript
a标签click和href执行顺序探讨
2014/06/23 Javascript
BootStrap实现鼠标悬停下拉列表功能
2017/02/17 Javascript
微信小程序 wx.login解密出现乱码的问题解决办法
2017/03/10 Javascript
在ES5与ES6环境下处理函数默认参数的实现方法
2018/05/13 Javascript
vue实现新闻展示页的步骤详解
2019/04/11 Javascript
详解vue 命名视图
2019/08/14 Javascript
[00:39]DOTA2上海特级锦标赛 Liquid战队宣传片
2016/03/04 DOTA
[43:18]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
详解python基础之while循环及if判断
2017/08/24 Python
Django页面数据的缓存与使用的具体方法
2019/04/23 Python
python异常处理、自定义异常、断言原理与用法分析
2020/03/23 Python
Python如何批量获取文件夹的大小并保存
2020/03/31 Python
详解tensorflow之过拟合问题实战
2020/11/01 Python
python 实现图片批量压缩的示例
2020/12/18 Python
英国电动工具购买网站:Anglia Tool Centre
2017/04/25 全球购物
Stuart Weitzman欧盟:美国奢华鞋履品牌
2017/05/24 全球购物
学校安全教育月活动总结
2014/07/07 职场文书
幼儿园教师师德师风演讲稿:爱我所爱 无悔青春
2014/09/10 职场文书
2014教师年度工作总结
2014/11/10 职场文书
2014年反洗钱工作总结
2014/11/22 职场文书
2014年教研工作总结
2014/12/06 职场文书
小学班主任经验交流材料
2014/12/16 职场文书
师德师风个人总结
2015/02/06 职场文书
穆斯林的葬礼读书笔记
2015/06/26 职场文书
《雪地里的小画家》教学反思
2016/02/16 职场文书
nginx七层负载均衡配置详解
2022/07/15 Servers