【问题标题】:Converting a binary string to the equivalent base 10 value in python [duplicate]在python中将二进制字符串转换为等效的以10为底的值[重复]
【发布时间】:2015-11-20 04:14:23
【问题描述】:

我想将二进制字符串(用户输入)转换为其以 10 为底的等效值。我想我有点接近,但就是无法理解。到目前为止,这是我想出的。我需要它遍历二进制字符串中的每个单独的数字并为其分配以 10 为底的等效值,然后将所有这些加起来以获得整个以 10 为底的数字。

def getBaseTen(myString):
    x = myString[0]

    needAnswers = len(myString)
    n = len(myString)

    two = (2^n)


    if (needAnswers >= 1):
        return (int(x)*int(two))

【问题讨论】:

    标签: python


    【解决方案1】:

    内置的int() 可以通过基数的可选参数来做到这一点:

    >>> a = '11010'
    >>> int(a)
    11010
    >>> int(a, 2)
    26
    

    【讨论】:

    • 完美。这正是我一直在寻找的。 tysm
    【解决方案2】:

    类似这样的:int(x, base=2)Link for more on this.

    def getBaseTen(myString):
        int(myString, 2)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-24
      • 2023-03-29
      • 2012-04-28
      • 2016-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多