将由0和1组成的字符串转换为其二进制等效物Python

5

我有一个只包含0和1的6个字符的字符串,需要使用二进制操作。我查阅了一些页面,大多数都提到将字符转换为二进制并将它们附加在一起以得出最终结果。

我需要在这个函数中使用它:

def acmTeam(topic):
    global finalCount
    for i in range(len(topic)-1):
        for j in range(i+1,len(topic)):
            final=toBinary(topic[i])|toBinary(topic[j])
            print(final)

话题的一个示例价值是

['10101', '11100', '11010', '00101']

我希望获得10101和11100的二进制值。这里我可以创建自己的函数toBinary来将其转换为二进制并返回,但是在Python中是否有内置函数或更有效的方法来执行此操作?

提前感谢 :)


我想要10101和11100的二进制值 - 这是什么意思? - Nir Alfasi
2
int('10101', base=2) vs "{0:b}".format(21) - metatoaster
@CalderWhite,这里我有一系列的0和1,而不是整数作为输入。 - Rishabh Ryber
这是重复的内容:将二进制字符串转换为整数 - metatoaster
@alfasin 有什么方法可以将 int(10101) 转换成 21? - Rishabh Ryber
@RishabhRyber 你知道 21 不是“二进制值”对吧? - Nir Alfasi
1个回答

11

试试这个:

int(s, base=2)

例如,

for i in ['10101', '11100', '11010', '00101']:
    print(int(i, base=2))

@metatoaster 也提到了这个。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接