给定两个二进制字符串,返回它们的和(也是一个二进制字符串)

2024-04-23 22:55:14 发布

您现在位置:Python中文网/ 问答频道 /正文

有人能帮我写代码吗。它工作得很好,但我被告知不要使用输入,因为当它们执行add_binary(1,1)时,它将忽略这些值并请求您自己的输入。我发现这比lol好得多。我诚实地用我所掌握的一点知识和我在网上收集的信息把这些代码放在一起。因此,如果有人能就如何修改代码以使其在没有手动输入的情况下工作提出建议,我将不胜感激!谢谢


def add_binary(a, b):

    while True:
        try:
           a = int(input('1st Binary: '), 2)
            except ValueError:
            print('not valid try again')
            continue
        try:
            b = int(input('2nd Binary: '), 2)
        except ValueError:
            print('not valid try again')
            continue
        else:
            result = (bin(a + b)[2:])
            print(result)
        break
    return result


add_binary(1,1)

Tags: 代码addinputnotresultintprintbinary
1条回答
网友
1楼 · 发布于 2024-04-23 22:55:14

他们的意思是你的add_binary总是需要添加它的参数,而不是直接请求输入。input调用需要在函数外部。我假设他们这样做是为了通过使用一些测试框架调用函数来评估您的函数

def add_binary(a,b):
    return bin(a+b)[2:]

def main():
    a = int(input('1st Binary: '),2)
    b = int(input('2nd binary: '),2)
    result = add_binary(a,b)
    print( result )

if __name__ == "__main__":
    main()

相关问题 更多 >