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常用模块用法分析
Sep 08 Python
python基于xml parse实现解析cdatasection数据
Sep 30 Python
Python多线程编程(一):threading模块综述
Apr 05 Python
python在Windows下安装setuptools(easy_install工具)步骤详解
Jul 01 Python
python WindowsError的错误代码详解
Jul 23 Python
十分钟搞定pandas(入门教程)
Jun 21 Python
使用Python画股票的K线图的方法步骤
Jun 28 Python
Django Celery异步任务队列的实现
Jul 24 Python
Python批量安装卸载1000个apk的方法
Apr 10 Python
OpenCV灰度化之后图片为绿色的解决
Dec 01 Python
python tkinter Entry控件的焦点移动操作
May 22 Python
pandas求平均数和中位数的方法实例
Aug 04 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 MYSQL乱码问题,使用SET NAMES utf8校正
2009/11/30 PHP
分享一个超好用的php header下载函数
2014/01/31 PHP
ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法
2014/10/29 PHP
PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
2014/11/20 PHP
静态html文件执行php语句的方法(推荐)
2016/11/21 PHP
PHP5.5基于mysqli连接MySQL数据库和读取数据操作实例详解
2019/02/16 PHP
理解JavaScript中的对象 推荐
2011/01/09 Javascript
浅析js中取绝对值的2种方法
2013/07/09 Javascript
jQuery制作拼图小游戏
2015/01/12 Javascript
jQuery实现在textarea指定位置插入字符或表情的方法
2015/03/11 Javascript
JavaScript获取一个范围内日期的方法
2015/04/24 Javascript
JavaScript 实现完美兼容多浏览器的复制功能代码
2015/04/28 Javascript
jquery实现图片左右切换的方法
2015/05/07 Javascript
JavaScript中Function函数与Object对象的关系
2015/12/17 Javascript
很棒的Bootstrap选项卡切换效果
2016/07/01 Javascript
js实现炫酷的左右轮播图
2017/01/18 Javascript
addEventListener()与removeEventListener()解析
2017/04/20 Javascript
详解node nvm进行node多版本管理
2017/10/21 Javascript
webpack4.x打包过程详解
2018/07/18 Javascript
JQuery Ajax动态加载Table数据的实例讲解
2018/08/09 jQuery
从零开始封装自己的自定义Vue组件
2018/10/09 Javascript
Pycharm 字体大小调整设置的方法实现
2019/09/27 Python
Jupyter Notebook 实现正常显示中文和负号
2020/04/24 Python
皇马官方商城:Real Madrid Store
2016/09/02 全球购物
为数据库创建索引都需要注意些什么
2012/07/17 面试题
大学生大二自我鉴定
2013/10/28 职场文书
不打扫卫生检讨书
2014/02/12 职场文书
教室布置标语
2014/06/26 职场文书
领导班子四风对照检查材料范文
2014/09/27 职场文书
2014年公务员个人工作总结
2014/11/22 职场文书
2019年大学生职业生涯规划书最新范文
2019/03/25 职场文书
Nginx本地目录映射实现代码实例
2021/03/31 Servers
变长双向rnn的正确使用姿势教学
2021/05/31 Python
Python中的套接字编程是什么?
2021/06/21 Python
简单聊聊TypeScript只读修饰符
2022/04/06 Javascript
Python使用华为API为图像设置多个锚点标签
2022/04/12 Python