是否有一个带二进制数字a的数字的函数,并且不是吗?(例如,18 [二进制10010]处的函数值为13 [二进制01101].)我认为这是波浪运算符(〜)所做的,但它只添加一个减号到18,这是二的补码而不是得到13.
正如评论中提到的那样~是按位NOT.
如果你想要一个5位无符号按位NOT,你可以使用带掩码的XOR:
>>> n = 0b10010 # 18
>>> m = 0b11111
>>> n ^ m
13
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1149 次 |
| 最近记录: |