为什么python在这里返回11 i = int('“ 23”,base = 4)而不是113? [关闭]

问题描述 投票:-2回答:1

[如果我理解正确,那么这段代码将在基数4中转换字符串23。但是当我尝试在线在基数4中转换23时,我将获得113。

为什么python返回我11?

手动转换23总是给我113。

i = int("23", base = 4)
print(i)
# prints 11
python-3.x int base
1个回答
0
投票

将基数4转换为23:

def convert(integer, base):
    result = ""
    while integer > 0:
            convert += str(integer % base)
            integer = integer // base
    return int(result[::-1])


print(convert(23,4))
© www.soinside.com 2019 - 2024. All rights reserved.