gpt4 book ai didi

python - Python 中位串的逻辑或

转载 作者:太空宇宙 更新时间:2023-11-04 08:36:36 25 4
gpt4 key购买 nike

我想要做的是对两个位串进行逻辑或的结果。例如:

    a='010010'
b='000101'
c=LOGIC_OR(a,b)
c
010111

我经常遇到的错误是,当我将“b”从字符串转换为二进制时,它删除了前导零。我使用的其他方法将“a”和“b”转换为整数。通常没有任何效果,我们将不胜感激。提前致谢

最佳答案

您可以使用 int 将它们转换为整数,指定基数为 2。然后,执行按位或运算,并将结果转换为bin的位串。

>>> c = int(a, 2) | int(b, 2))
>>> c
23

如果要将结果打印为位串,请使用str.format。如果您使用的是 python-3.6,您还可以使用 f-strings。

>>> '{:b}'.format(c)
'10111'

>>> print(f"{c:b}")
10111

要捕获关于 a/b 的前导零,请使用 str.zfill -

>>> f"{c:b}".zfill(len(a))
'010111'

关于python - Python 中位串的逻辑或,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48373554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com