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将mdb数据库文件导入postgresql数据库示例
Feb 17 Python
实践Python的爬虫框架Scrapy来抓取豆瓣电影TOP250
Jan 20 Python
Python简单生成8位随机密码的方法
May 24 Python
Pandas:DataFrame对象的基础操作方法
Jun 07 Python
Linux下多个Python版本安装教程
Aug 15 Python
如何在Django中设置定时任务的方法示例
Jan 18 Python
Python的Tkinter点击按钮触发事件的例子
Jul 19 Python
Python2 与Python3的版本区别实例分析
Mar 30 Python
如何在windows下安装Pycham2020软件(方法步骤详解)
May 03 Python
python框架flask入门之路由及简单实现方法
Jun 07 Python
深入浅析pycharm中 Make available to all projects的含义
Sep 15 Python
使paramiko库执行命令时在给定的时间强制退出功能的实现
Mar 03 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中__get()和__set()的用法实例详解
2013/06/04 PHP
探讨php中防止SQL注入最好的方法是什么
2013/06/10 PHP
Apache实现Web Server负载均衡详解(不考虑Session版)
2013/07/05 PHP
支持中文和其他编码的php截取字符串函数分享(截取中文字符串)
2014/03/13 PHP
PHP框架Laravel学习心得体会
2015/10/28 PHP
深入浅析php中sprintf与printf函数的用法及区别
2016/01/08 PHP
PHP常见的6个错误提示及解决方法
2016/07/07 PHP
php实现微信公众平台发红包功能
2018/06/14 PHP
Yii框架小部件(Widgets)用法实例详解
2020/05/15 PHP
PHP实现腾讯短网址生成api接口实例
2020/12/08 PHP
javascript委托(Delegate)blur和focus用法实例分析
2015/05/26 Javascript
JavaScript各类型的关系图解
2015/10/16 Javascript
jqueryMobile 动态添加元素,展示刷新视图的实现方法
2016/05/28 Javascript
bootstrap confirmation按钮提示组件使用详解
2017/08/22 Javascript
解决vue.js在编写过程中出现空格不规范报错的问题
2017/09/20 Javascript
angular2 ng2 @input和@output理解及示例
2017/10/10 Javascript
20多个小事例带你重温ES10新特性(小结)
2019/09/29 Javascript
解决angular 使用原生拖拽页面卡顿及表单控件输入延迟问题
2020/04/21 Javascript
Python不规范的日期字符串处理类
2014/06/10 Python
python中迭代器(iterator)用法实例分析
2015/04/29 Python
Python的Django框架中设置日期和字段可选的方法
2015/07/17 Python
Django 连接sql server数据库的方法
2018/06/30 Python
对python内置map和six.moves.map的区别详解
2018/12/19 Python
Python用Try语句捕获异常的实例方法
2019/06/26 Python
pyenv与virtualenv安装实现python多版本多项目管理
2019/08/17 Python
Python猜数字算法题详解
2020/03/01 Python
python中JWT用户认证的实现
2020/05/18 Python
业务员岗位职责
2013/11/16 职场文书
音乐器材管理制度
2014/01/31 职场文书
安全责任书范文
2014/03/12 职场文书
环境整治工作方案
2014/05/18 职场文书
大学生就业求职信
2014/06/12 职场文书
2015年宣传部部长竞选演讲稿
2014/11/28 职场文书
2015年平安创建工作总结
2015/04/29 职场文书
三八节活动简报
2015/07/20 职场文书
《鸡兔同笼》教学反思
2016/02/19 职场文书