当前位置: 首页 > 面试题库 >

Python-在字符串中翻转二进制1和0

戈华茂
2023-03-14
问题内容

我正在尝试采用字符串形式的二进制数并将1和0翻转,即将字符串中的所有1都更改为0,并将所有0都更改为1。我是Python的新手,已经花了几个小时想弄清楚它。


问题答案:

琥珀色的答案虽然优越,但可能不是最明确的,因此,这里有一个超级基本的迭代示例:

b_string = "1100101"
ib_string = ""

for bit in b_string:
  if bit == "1":
    ib_string += "0"
  else:
    ib_string += "1"

print ib_string

这可以用 更好的 方法来完成…替换,理解,但这只是一个例子。

一旦您了解了这个问题的基础,我就会从该问题的其他答案中学习。这种方法缓慢而痛苦。正如 Muhammad Alkarouri 指出的那样,为了获得
最佳 性能,/组合是必经之路。理解的背后。我的代码是最慢的,而且速度相当可观。 __string.translate``maketrans



 类似资料:
  • 问题内容: 我需要一种方法来获取python中字符串的二进制表示形式。例如 是否有一些巧妙的方法来做到这一点? 问题答案: 像这样吗

  • 问题内容: 是否有任何固定的Python方法将Python中的Integer(或Long)转换为二进制字符串? Google上有无数的dec2bin()函数…但是我希望可以使用内置函数/库。 问题答案: Python的字符串格式方法可以采用格式规范。

  • 我如何将一个写为二进制的字符串转换为二进制(字节数组)? 如果我有一个字符串: 下面是当我将二进制设置为字节数组时发生的情况(字节数组返回48,这是ASCII) 我不擅长解释,所以希望上面的例子足以告诉你我想要什么。

  • 问题内容: 我想将十六进制字符串转换为二进制字符串。例如,十六进制2是0010。下面是代码: 但是,这仅适用于十六进制0-9;它不适用于十六进制A-F,因为它使用。谁能增强它? 问题答案: 您需要告诉Java int是十六进制的,如下所示:

  • 问题内容: 我发现将十六进制转换为二进制的方式如下: 尽管此方法适用于较小的十六进制数,但以下十六进制数 抛出一个 因此,我编写了以下似乎可行的方法: 上面的方法基本上接受十六进制字符串中的每个字符,并在必要时将其转换为等价的二进制零,然后将其连接到返回值。这是执行转换的正确方法吗?还是我忽略了一些可能导致我的方法失败的事情? 在此先感谢您的协助。 问题答案: 会做你想要的。只需传递2的基数即可。

  • 问题内容: 我需要将二进制字符串转换为十六进制字符串,但是我有问题。我通过这种方法将二进制字符串转换为十六进制字符串: 没关系!但是我丢失了字符串左侧的零。例如: 该方法返回此:123456789ABCDEF,但我想返回此: 00000123456789ABCDEF 问题答案: 而不是我将使用解析值,然后以所需的宽度(在您的示例中为21)输出值: