python 计算数字位数,Python | 计算一个数字的总位数

先决条件: Python中的二进制数系统

给定一个数字,我们必须使用Python查找二进制值的总位数来表示该数字。

示例

Input:

num = 61

Binary value of 61 is = 0b111101

Output:

Total number of bits = 6

Note: '0b' is prefixed to represent binary value

Input:

num = 12

Binary value of 61 is = 0b1100

Output:

Total number of bits = 4

程序:

# 计算一个数字的总位数

# 声明一个数字

num = 61

# 使用bin()方法获取数字的二进制值

# 打印二进制值输出将为0b111101

print "binary value of {0} is: {1}".format (num, bin(num))

# 存储二进制数的长度

length = len(bin(num))

# 由于二进制值包含0b作为前缀

# 因此获得确切的长度总位数

# 从长度中减去2

length -=2

# 列印长度

print "total number of bits: ", length

输出结果

binary value of 61 is: 0b111101

total number of bits:  6

通过定义功能

在下面的程序中,我们使用len(bin(n)[2:]),它将在2个字符后返回二进制值的总长度。

让我们来了解

a=61

= len(bin(a)[2:])# bin(a)为'0b111101'

= len('0b111101'[2:])

= len ('111101')

= 6

程序:

# 计算一个数字的总位数

# 函数获取总位数

# 函数将返回总位数

def totalBits(n):

return len(bin(n)[2: ])

#主要代码

a = 61

b = 12

print "Total bits in {0} = {1} ".format(a,totalBits(a))

print "Total bits in {0} = {1} ".format(b,totalBits(b))

输出结果

Total bits in 61 = 6

Total bits in 12 = 4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值