【问题标题】:Python 3.6 converting 8 bit binary to decimalPython 3.6 将 8 位二进制转换为十进制
【发布时间】:2017-12-06 14:16:56
【问题描述】:

我正在 Python 3,6 中编写一个 Python 代码,它将提示用户输入 2 个小数(最多 255)或一个 8 位二进制数并转换为十进制,让用户输入 2 个标准十进制数是没问题,让他们输入二进制数也一样,但是一旦我打印二进制转换,它会显示每个二进制数,直到十进制对应的数字,假设我输入 11111111,它会显示,1, 3、7、15、31 等到 255

def add2():

    binary = input('enter a number in binary: ')
    decimal = 0
    for digit in binary:
        decimal= decimal*2 + int(digit)

        print ("This is the decimal equivalent" , decimal,)

这是打印结果:

这就是我的代码,我将附上打印计算的样子的图片。在图像中您可以看到它打印了 8 次,每个位最多 255,实际上我只是希望代码打印相应的十进制整数,到用户输入的位,例如,如果他们输入 11111111,就打印 255。

【问题讨论】:

  • 缩进在 python 中很重要。您的 print 缩进为 for 循环的一部分,因此它会在每次迭代时打印。将其移至外层,它只会打印一次。

标签: python


【解决方案1】:

只需将您的 print() 指令从您的 for 循环中取出,否则它将打印出您答案的每一步。

【讨论】:

  • 哦,我明白了,这已经奏效了。谢谢,我会尽可能投票。
猜你喜欢
  • 2018-06-24
  • 1970-01-01
  • 2014-03-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-09
  • 1970-01-01
  • 1970-01-01
  • 2016-08-13
相关资源
最近更新 更多