运算符

Python中的运算符,今天用到了记录下,用一个记一个.............

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

a=60,b=13

 python基础系列 随笔

>>

在做单位换算的时候,用到了这个>>符号,第一眼看得我一脸懵逼,毕竟以前没用过........

这个也很简单,其实上面已经解释清楚了,下面我详细演示下。

# << 左边可以看成待转换的二进制位,右边的是左移多少位,可以看成是在后面加几个0
# 例如2的二进制为10,左移三位就是10000,结果为16
print(2 << 3)
# 16

# 下面是实际用例..............
# 传入的值都为b
n = 1024
symbols = ('K', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y')
prefix = {}
for i, s in enumerate(symbols):
    # 将所有单位都默认为1换算成b,例如1kb=1024b
    prefix[s] = 1 << (i + 1) * 10
for s in reversed(symbols):
    # 判断当前值,是否大于这个单位的最大byte.
    if n >= prefix[s]:
        value = float(n) / prefix[s]
        print('%.1f%s' % (value, s))
print('%sB' % n)

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄