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类和继承用法实例
Jul 07 Python
Python排序搜索基本算法之冒泡排序实例分析
Dec 09 Python
Python实现连接postgresql数据库的方法分析
Dec 27 Python
让代码变得更易维护的7个Python库
Oct 09 Python
Python3.5面向对象与继承图文实例详解
Apr 24 Python
Python登录系统界面实现详解
Jun 25 Python
pandas删除行删除列增加行增加列的实现
Jul 06 Python
python+opencv像素的加减和加权操作的实现
Jul 14 Python
Python assert语句的简单使用示例
Jul 28 Python
Pycharm和Idea支持的vim插件的方法
Feb 21 Python
Tensorflow与Keras自适应使用显存方式
Jun 22 Python
python json.dumps() json.dump()的区别详解
Jul 14 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
阿拉伯的咖啡与水烟
2021/03/03 咖啡文化
php 空格,换行,跳格使用说明
2009/12/18 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
2014/07/22 PHP
Aptana调试javascript图解教程
2009/11/30 Javascript
Jquery替换已存在于element上的event的方法
2010/03/09 Javascript
密码强度检测效果实现原理与代码
2013/01/04 Javascript
js hover 定时器(实例代码)
2013/11/12 Javascript
jQuery前端框架easyui使用Dialog时bug处理
2014/12/05 Javascript
javascript实现禁止复制网页内容
2014/12/16 Javascript
jquery基本选择器匹配多个元素的实现方法
2016/09/05 Javascript
微信开发 使用picker封装省市区三级联动模板
2016/10/28 Javascript
bootstrap table复杂操作代码
2016/11/01 Javascript
利用JS判断字符串是否含有数字与特殊字符的方法小结
2016/11/25 Javascript
React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能
2017/05/26 Javascript
jQuery自动或手动图片切换效果
2017/10/11 jQuery
BootStrap table实现表格行拖拽效果
2018/12/01 Javascript
JavaScript数据结构与算法之二叉树实现查找最小值、最大值、给定值算法示例
2019/03/01 Javascript
layui实现checkbox的目录树tree的例子
2019/09/12 Javascript
[40:16]TFT vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
[54:27]TNC vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
10种检测Python程序运行时间、CPU和内存占用的方法
2015/04/01 Python
深入理解python函数递归和生成器
2016/06/06 Python
Python的装饰器用法学习笔记
2016/06/24 Python
Python切换pip安装源的方法详解
2016/11/18 Python
django中使用POST方法获取POST数据
2019/08/20 Python
python对Excel按条件进行内容补充(推荐)
2019/11/24 Python
keras训练曲线,混淆矩阵,CNN层输出可视化实例
2020/06/15 Python
django template实现定义临时变量,自定义赋值、自增实例
2020/07/12 Python
HTML5学习笔记之html5与传统html区别
2016/01/06 HTML / CSS
幼儿园教师国培感言
2014/02/02 职场文书
初三新学期计划书
2014/05/03 职场文书
机械专业技术员求职信
2014/06/14 职场文书
安全事故隐患排查治理制度
2015/08/05 职场文书
《鲁滨逊漂流记》之六读后感(4篇)
2019/09/29 职场文书
如何用RabbitMQ和Swoole实现一个异步任务系统
2021/05/29 PHP
java协程框架quasar和kotlin中的协程对比分析
2022/02/24 Java/Android