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 Sleep休眠函数使用简单实例
Feb 02 Python
Django框架中处理URLconf中特定的URL的方法
Jul 20 Python
python3.4用函数操作mysql5.7数据库
Jun 23 Python
python去除字符串中的换行符
Oct 11 Python
python版微信跳一跳游戏辅助
Jan 11 Python
Python 数据处理库 pandas进阶教程
Apr 21 Python
Python实现的多叉树寻找最短路径算法示例
Jul 30 Python
在python中只选取列表中某一纵列的方法
Nov 28 Python
Python通过paramiko远程下载Linux服务器上的文件实例
Dec 27 Python
python 正则表达式参数替换实例详解
Jan 17 Python
详解Python中list[::-1]的几种用法
Nov 16 Python
详解Django中的FBV和CBV对比分析
Mar 01 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
第八节 访问方式 [8]
2006/10/09 PHP
PHP中copy on write写时复制机制介绍
2014/05/13 PHP
php表单请求获得数据求和示例
2014/05/15 PHP
CI框架常用方法小结
2016/05/17 PHP
PHP实现从上往下打印二叉树的方法
2018/01/18 PHP
jQuery源码分析-04 选择器-Sizzle-工作原理分析
2011/11/14 Javascript
Js控制弹窗实现在任意分辨率下居中显示
2013/08/01 Javascript
jquery遍历之parent()和parents()的区别及parentsUntil()方法详解
2013/12/02 Javascript
使用jQuery和PHP实现类似360功能开关效果
2014/02/12 Javascript
chrome下img加载对height()的影响示例探讨
2014/05/26 Javascript
jQuery实现的手机发送验证码倒计时效果代码分享
2015/08/24 Javascript
JS实现日期时间动态显示的方法
2015/12/07 Javascript
深入理解vue.js中$watch的oldvalue与newValue
2017/08/07 Javascript
基于JavaScript实现简单的音频播放功能
2018/01/07 Javascript
微信小程序实现折叠面板
2018/01/31 Javascript
Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐)
2019/05/08 Javascript
深入了解JavaScript代码覆盖
2019/06/13 Javascript
mapboxgl区划标签避让不遮盖实现的代码详解
2020/07/01 Javascript
浅谈vue中resetFields()使用注意事项
2020/08/12 Javascript
如何在Express4.x中愉快地使用async的方法
2020/11/18 Javascript
[52:06]FNATIC vs NIP 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
python+splinter自动刷新抢票功能
2018/09/25 Python
python判断文件是否存在,不存在就创建一个的实例
2019/02/18 Python
python调用摄像头拍摄数据集
2019/06/01 Python
python实现自动化报表功能(Oracle/plsql/Excel/多线程)
2019/12/02 Python
英国在线定做百叶窗网站:Make My Blinds
2020/08/17 全球购物
opencv实现图像几何变换
2021/03/24 Python
前台领班岗位职责
2013/12/04 职场文书
结婚典礼证婚词
2014/01/11 职场文书
创业计划书撰写原则
2014/01/25 职场文书
广告词串烧
2014/03/19 职场文书
《长征》教学反思
2014/04/27 职场文书
湖南省召开党的群众路线教育实践活动总结大会报告
2014/10/21 职场文书
2016年春季开学典礼新闻稿
2015/11/25 职场文书
2019商业计划书格式、范文
2019/04/24 职场文书
《吸血鬼:避世 血猎》官宣4.27发售 系列首款大逃杀
2022/04/03 其他游戏