基本二进制到十进制转换程序不工作(Python)

基本二进制到十进制转换程序不工作(Python),python,binary,Python,Binary,我试着写一个将二进制转换成十进制的basic程序。但是,它不起作用。我哪里出错了?我错过了什么。提前谢谢你的帮助 n=int(raw_input(' ')) while n = 1: k = n % 10 z= 0 w=0 w = k * (pow ( 2, z)) + w z = z+1 n/10 print w 首先,您使用=进行比较测试。相反,我认为您应该使用=(不相等): =仅用于分配 此外,该行: n/10 什么也不做。相反,它应该是: n

我试着写一个将二进制转换成十进制的basic程序。但是,它不起作用。我哪里出错了?我错过了什么。提前谢谢你的帮助

n=int(raw_input(' '))

while n = 1:
   k = n % 10
   z= 0
   w=0
   w = k * (pow ( 2, z)) + w
   z = z+1
   n/10
print w

首先,您使用
=
进行比较测试。相反,我认为您应该使用
=(不相等):

=
仅用于分配


此外,该行:

n/10
什么也不做。相反,它应该是:

n /= 10
这相当于:

n = n / 10

你能举例说明它是如何不起作用的吗?你有错误吗?如果是这样的话,回溯是什么?另外,您是否知道
int(number,base)
int('10010',2)==18
运行需要很长时间,当运行像1011/5这样的小数值时,没有实际输出minutes@mhlester我如何使用它来转换用户输入?编辑:得到IT@user3281550-他说您的整个脚本可以简化为:
print int(原始输入(“”),2)
Yes!你说得对。然而,它并没有得到正确的十进制等价物。这是一个算法错误,但最有可能。谢谢
n = n / 10