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实现示例
Aug 26 Python
Python 包含汉字的文件读写之每行末尾加上特定字符
Dec 12 Python
Python正则捕获操作示例
Aug 19 Python
Django实现全文检索的方法(支持中文)
May 14 Python
Python处理命令行参数模块optpars用法实例分析
May 31 Python
Numpy数据类型转换astype,dtype的方法
Jun 09 Python
Python输出\u编码将其转换成中文的实例
Dec 15 Python
VSCode Python开发环境配置的详细步骤
Feb 22 Python
Python实现多态、协议和鸭子类型的代码详解
May 05 Python
使用Flask-Cache缓存实现给Flask提速的方法详解
Jun 11 Python
深入浅析python变量加逗号,的含义
Feb 22 Python
详解用Python爬虫获取百度企业信用中企业基本信息
Jul 02 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
77A一级收信机修理记
2021/03/02 无线电
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
2008/11/18 PHP
PHP 数组遍历顺序理解
2009/09/09 PHP
PHP表单递交控件名称含有点号(.)会被转化为下划线(_)的处理方法
2013/01/06 PHP
php中http与https跨域共享session的解决方法
2014/12/20 PHP
使用phpexcel类实现excel导入mysql数据库功能(实例代码)
2016/05/12 PHP
php获取excel文件数据
2017/04/21 PHP
关于php支持的协议与封装协议总结(推荐)
2017/11/17 PHP
php源码的使用方法讲解
2019/09/26 PHP
csdn 论坛技术区平均给分功能
2009/11/07 Javascript
JavaScript window.document的属性、方法和事件小结
2012/10/24 Javascript
Three.js源码阅读笔记(物体是如何组织的)
2012/12/27 Javascript
使用AngularJS实现表单向导的方法
2015/06/19 Javascript
jQuery实现带渐显效果的人物多级关系图代码
2015/10/16 Javascript
基于angularjs实现图片放大镜效果
2016/08/31 Javascript
纯js实现悬浮按钮组件
2016/12/17 Javascript
Vue项目中使用jquery的简单方法
2019/05/16 jQuery
js实现淘宝首页的banner栏效果
2019/11/26 Javascript
vscode 配置vue+vetur+eslint+prettier自动格式化功能
2020/03/23 Javascript
[16:43]Heroes19_剃刀(完美)
2014/10/31 DOTA
Python实现PS滤镜特效Marble Filter玻璃条纹扭曲效果示例
2018/01/29 Python
详解Python中pandas的安装操作说明(傻瓜版)
2019/04/08 Python
python如何将两张图片生成为全景图片
2020/03/05 Python
Tensorflow中k.gradients()和tf.stop_gradient()用法说明
2020/06/10 Python
css3与html5实现响应式导航菜单(导航栏)效果分享
2014/02/12 HTML / CSS
80年代复古T恤:TruffleShuffle
2018/07/02 全球购物
图库照片、免版税图片、矢量艺术、视频片段:Depositphotos
2019/08/02 全球购物
车工岗位职责
2013/11/26 职场文书
冬季安全检查方案
2014/05/23 职场文书
2014年中学生检讨书大全
2014/10/09 职场文书
忠犬八公的故事观后感
2015/06/05 职场文书
2016年父亲节寄语
2015/12/04 职场文书
3招让你摆脱即兴讲话冷场尴尬
2019/08/08 职场文书
SQLServer2019 数据库的基本使用之图形化界面操作的实现
2021/04/08 SQL Server
为什么MySQL 删除表数据 磁盘空间还一直被占用
2021/10/16 MySQL
MySQL Innodb索引机制详细介绍
2021/11/23 MySQL