簡體   English   中英

將位從0翻轉到1

[英]Flipping bits from 0 to 1

我有一個由

011

我想將索引零的位翻轉為1,這將給我:

111

因為python不允許我在最初計划的地方使用整數表示位:

mybit = 011

這給了我一些錯誤的錯誤。 所以我發現的唯一方法是使用字符串來表示它:

mybit = "011"

但由於字符串是不可變的,因此我無法找到任何將索引0的0翻轉為1的方法。從頭開始創建新字符串似乎不可行,因為它看起來並不像在翻轉它。 希望對此有所幫助

您在正確的軌道上。 將其表示為整數。

mybit = 0b011

使用^ (按位異或)運算符翻轉位。 第二個操作數中為1的位將被翻轉。

mybit ^= 0b100

使用|設置位(即使已設置) | (按位或)。 第二個操作數中的1位置1。

mybit |= 0b100

使用& (按位與)清除位(即使已經清除)。 第二個操作數中為0的位將被清除。

mybit &= 0b011

以二進制格式打印。

print(bin(mybit))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM