Python 二进制到十进制转换器(包括负数)
我需要将二进制值(如“1010”)转换为十进制值。这需要包括负二进制Python 二进制到十进制转换器(包括负数),python,binary,decimal,converter,Python,Binary,Decimal,Converter,我需要将二进制值(如“1010”)转换为十进制值。这需要包括负二进制 def BinaryToDecimal (n): n1 = n decimal = 0 i = 0 n = 0 while(n != 0): dec = n % 10 decimal = decimal + dec * pow(2, i) n = n//10 i += 1 print(decimal) 到目前为止,这就是我所拥有
def BinaryToDecimal (n):
n1 = n
decimal = 0
i = 0
n = 0
while(n != 0):
dec = n % 10
decimal = decimal + dec * pow(2, i)
n = n//10
i += 1
print(decimal)
到目前为止,这就是我所拥有的,但它不起作用。我不知道还能做什么。请帮忙!我不允许使用任何花哨的python库,我应该手动编写代码 这将起作用:
def BinaryToDecimal(n):
n = str(n)
print(int(n,2))
Python外壳输出
二进制到十进制:
>>> bin_str = '11111111'
>>> int(bin_str,2)
255
小数到二进制:
>>> decimal = 255
>>> "{:b}".format(decimal)
'11111111'
设置n=0,然后立即测试n!=while循环中的0。更改此选项并计算您是否将二进制数作为字符串或整数传递?我不知道模运算符是否定义在字符串上。