首页 文章

在int等转换bin [python]

提问于
浏览
0

我做了一个程序,应该将 binary 数字转换为 decimal . 要求用户输入一个数字,有一个布尔检查用于查找是否为bin编号,如果是这样的话,它应该将bin转换为十进制数 . 问题:对于带有基数10的int(),我得到一个错误无效的文字:'0b11001'

码:

def binToDec(n):
    return int(n)


def Umwandlung():
    n = input("Eine Zahl eingeben: ")
    if type(n)==str:
        binToDec(n)
    else:
        return "Nicht moeglich"

2 回答

  • 2

    尝试将 int(n) 更改为 int(n, 2)

  • 1

    我认为最pythonic的方法是将它放在 try ... except 块中并捕获ValueError:

    n = input("Eine Zahl eingeben: ")
    try:
        print(int(n, 2))
    except ValueError:
        print("Nicht möglich")
    

相关问题