精华内容
下载资源
问答
  • I am trying to write an application to convert bytes to kb to mb to gb to tb.Here's what I have so far:def size_format(b):if b < 1000:return '%i' % b + 'B'elif 1000 <= b < 1000000:return '%.1...

    I am trying to write an application to convert bytes to kb to mb to gb to tb.

    Here's what I have so far:

    def size_format(b):

    if b < 1000:

    return '%i' % b + 'B'

    elif 1000 <= b < 1000000:

    return '%.1f' % float(b/1000) + 'KB'

    elif 1000000 <= b < 1000000000:

    return '%.1f' % float(b/1000000) + 'MB'

    elif 1000000000 <= b < 1000000000000:

    return '%.1f' % float(b/1000000000) + 'GB'

    elif 1000000000000 <= b:

    return '%.1f' % float(b/1000000000000) + 'TB'

    The problem is, when I try the application I get everything after the decimal zeroing out.

    example

    size_format(623) yields

    '623B'

    but with size_format(6200),

    instead of getting '6.2kb'

    I'm getting '6.0kb'.

    Any ideas why?

    解决方案

    Fixed version of Bryan_Rch's answer:

    def format_bytes(size):

    # 2**10 = 1024

    power = 2**10

    n = 0

    power_labels = {0 : '', 1: 'kilo', 2: 'mega', 3: 'giga', 4: 'tera'}

    while size > power:

    size /= power

    n += 1

    return size, power_labels[n]+'bytes'

    展开全文
  • from django.template.defaultfilters import filesizeformat total = 1077772160 # 单位是byte s = filesizeformat(total) print(s) # 1.0GB total = 829145600 # 单位是byte ...print(s) # 890MB

    将byte 转换成MB,GB

    from django.template.defaultfilters import filesizeformat
    
    total = 1077772160  # 单位是byte
    s = filesizeformat(total)
    print(s)  # 1.0GB
    
    total = 829145600  # 单位是byte
    s = filesizeformat(total)
    print(s)  # 890MB

    根据MB,GB转换成byte

    UNIT_KB = 'kb'
    UNIT_MB = 'mb'
    UNIT_GB = 'gb'
    UNIT_TB = 'tb'
    UNIT_PB = 'pb'
    
    UNIT_KIB = 'kib'
    UNIT_MIB = 'mib'
    UNIT_GIB = 'gib'
    UNIT_TIB = 'tib'
    UNIT_PIB = 'pib'
    
    def get_file_size_unit(unit_type):
        table = {
            # decimal
            UNIT_KB: 10 ** 3,
            UNIT_MB: 10 ** 6,
            UNIT_GB: 10 ** 9,
            UNIT_TB: 10 ** 12,
            UNIT_PB: 10 ** 15,
    
            # binary
            UNIT_KIB: 1 << 10,
            UNIT_MIB: 1 << 20,
            UNIT_GIB: 1 << 30,
            UNIT_TIB: 1 << 40,
            UNIT_PIB: 1 << 50,
        }
    
        unit_type = unit_type.lower()
        if unit_type not in table.keys():
            raise TypeError('Invalid unit type')
    
        return table.get(unit_type)
    
    # 若用户传递的是 56MB
    num = 56  # 数值
    unit = 'MB'  # 单位
    b = get_file_size_unit('MB')
    print(b)  # 1000000  
    # 最后的byte:
    print(num * b)  # 56000000  

     

    展开全文
  • python 文件数据大小 单位 人性化转换: B KB MB GB
    def StrOfSize(size):
        '''
        auth: wangshengke@kedacom.com ;科达柯大侠
        递归实现,精确为最大单位值 + 小数点后三位
        '''
        def strofsize(integer, remainder, level):
            if integer >= 1024:
                remainder = integer % 1024
                integer //= 1024
                level += 1
                return strofsize(integer, remainder, level)
            else:
                return integer, remainder, level
    
        units = ['B', 'KB', 'MB', 'GB', 'TB', 'PB']
        integer, remainder, level = strofsize(size, 0, 0)
        if level+1 > len(units):
            level = -1
        return ( '{}.{:>03d} {}'.format(integer, remainder, units[level]) )
    
    print(StrOfSize(11923))
    print(StrOfSize(5463443))
    print(StrOfSize(97736213623))
    
    输出结果:
    11.659 KB
    5.215 MB
    91.024 GB
    
    展开全文
  • 我正在尝试编写一个应用程序,将字节转换为kb到mbgb到tb.这是我到目前为止所拥有的:def size_format(b):if b < 1000:return '%i' % b + 'B'elif 1000

    我正在尝试编写一个应用程序,将字节转换为kb到mb到gb到tb.

    这是我到目前为止所拥有的:

    def size_format(b):

    if b < 1000:

    return '%i' % b + 'B'

    elif 1000 <= b < 1000000:

    return '%.1f' % float(b/1000) + 'KB'

    elif 1000000 <= b < 1000000000:

    return '%.1f' % float(b/1000000) + 'MB'

    elif 1000000000 <= b < 1000000000000:

    return '%.1f' % float(b/1000000000) + 'GB'

    elif 1000000000000 <= b:

    return '%.1f' % float(b/1000000000000) + 'TB'

    问题是,当我尝试应用程序时,我会在十进制清零后得到所有内容.

    size_format(623)产生

    ‘623B’

    但是使用size_format(6200),

    而不是’6.2kb’

    我得到’6.0kb’.

    有什么想法吗?

    展开全文
  • Python字节单位转换

    千次阅读 2018-04-02 18:33:38
    Python字节单位转换
  • #!/usr/bin/envpython #-*-coding:utf-8-*- """智能转换bytes为kb/mb/gb/tb/pb... """ importmath defconvertBytes(bytes,lst=['Bytes','KB','MB','GB','TB','PB']): ...
  • 智能转换 bytes 为 kb/mb/gb/tb/pb... 用到了 math 模块中的一些函数 #!/usr/bin/env python # -*- coding: utf-8 -*- """智能转换 bytes 为 kb/mb/gb/tb/pb... """ import math def ...
  • python 数据类型、进制转换 数据类型 存储单位 最小单位是bit,表示二进制的0或1,一般写作b 最小的存储单位是字节,用byte表示,1B = 8b 1024B = 1KB 1024KB = 1MB 1024MB = 1GB ... python进制转换或数据格式转换 ...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 我就废话不多说了,直接上代码! ... kbunits=['KB','MB','GB','TB','PB','EB','ZB','YB','BB','NB','DB'] kibunits=['KiBi','MiB','GiB','TiB','PiB','EiB','ZiB','YiB','BiB','NiB','DiB'] fo
  • 存储单位最小单位是bit,表示二进制的0或1,一般写作b最小的存储单位是字节,用byte表示,1B = 8b1024B = 1KB1024KB = 1MB1024MB = 1GB1024GB = 1TB1024TB = 1PB2^32 = 2^10 * 2^10 * 2^10 * 2^2 = 4GB进制转换十...
  • 使用Python进行字节符号转换方法 代码如下: import os __author__ = 'Evan' def bytes_conversion(size): ... symbols = ('KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB') prefix = dict() for i, s in enumer
  • 有时候需要计算一个文件的大小,但是 473234234 B 我们一眼也看不出来有多大,下面的程序可以帮助你快速转换。 # -*- coding: utf-8 -*- import math def bit_conversion(size, dot=2): size = float(size) # ...
  • 发现一个好用的Python函数,用于将字节Bytes转为易于人阅读的量级格式,包括KB/MB/GB/TB等: def bytes2human(n): # http://code.activestate.com/recipes/578019 # >>> bytes2human(10000) # '9.8K' #...
  •  于是我们就选择了一种曲线救国的方式,既然数字可以转换成十进制,我们只要想办法把文字转换成数字,这样文字不就可以表示成二进制了么?  可是文字应该怎么转换成数字呢?就是强制转换啊,简单粗暴呀。 我们...
  • 数据类型 存储单位 最小单位是bit,表示二进制的0或1,一般写作b ...1024GB = 1TB 1024TB = 1PB 2^32 = 2^10 * 2^10 * 2^10 * 2^2 = 4GB 进制转换 十进制: 基数为0~9,逢10进1 示例:123 = ...
  • Python实现文件大小转换 def sizeFormat(size, is_disk=False, precision=2): ''' size format for human. byte ---- (B) kilobyte ---- (KB) megabyte ...
  • 计算机文件大小单位b = bit 位(比特)B = Byte 字节​1Byte = 8 bit #一个字节等于8位 可以简写成 1B = 8b1KB = 1024B1MB = 1024KB1GB = 1024MB1TB = 1024GB1PB = 1024TB1EB = 1024PB进制分类二进制:由2个数字组成,有...
  • python循环字符转换

    2018-06-05 20:44:00
    python2编码转换 s = ' 你好 ' # utf-8编码 s_to_unicode=s.decode( ' utf-8 ' ) # utf8先转到unicode print (s_to_unicode) s_to_gbk =s_to_unicode.encode( ' gbk ' ) # unicode转到gbk print (s_to_gbk) ...
  • python编码及转换

    2018-04-19 16:58:00
     用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成后,保存的时候再把Unicode转换为UTF-8保存到文件。如下图:     三 编 码  ascii:字母,数字,特殊字符。没有中文...
  • 8 bit = 1 byte(字节) 1024 byte = 1 kb(千字节) 1024 kb = 1 mb(兆字节) 1024 mb = 1 gb(吉字节) 1024 gb = 1 tb(特字节) 八进制:满八进一 计数:0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20…… ...
  • Python常见字符编码间的转换一、Python常见字符编码字符编码的常用种类介绍第一种:ASCII码ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的...
  • 画这个。 是一台宝丽来相机,可以绘制卡通。 您指向并射击-然后弹出动画片;... 当要求下载卡通数据集(〜5GB)和张量流模型(〜100MB)时,选择“是”。 下载完成后,使用ctrl-C关闭应用程序。 使用ca
  • Python常见字符编码及其之间的转换

    万次阅读 2018-03-29 17:28:36
    参考:Python常见字符编码 + Python常见字符编码间的转换一、Python常见字符编码字符编码的常用种类介绍第一种:ASCII码ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是...
  • Python

    万次阅读 2017-09-23 14:38:03
    Python进阶(一)-初识Python数据元素:列表&元组   毕业论文已完成,下面就是等待盲审结果了。在此期间,已感觉论文无从看起。就学习一下Python吧,听说这是一门很神奇的语言。下面言归正传~    在线文档查询:...
  • 温度转换Python代码: #TempConvert.py TempStr = input("请输入带有符号的温度值 :") if TempStr[-1] in ['F','f']: C = (eval(TempStr[0:-1]) - 32)/1.8 print("转换后的温度是{:.2f}C"....
  • 功能1 把字节转换自适应转为其他单位(ls -h),超过1024投入高一级的区间,不足1024投入本级区间,如1000K是一个合理值,1030K.../usr/bin/python3 # -*- coding: utf-8 -*- import re def size_b_to_othe...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,815
精华内容 3,126
关键字:

mb转换gbpython

python 订阅