首先,我不是Python专家,所以这是我的主题:我要反转了许多,让说number = "ABCD123"(是的,这是一个字符串,但我需要做的是这样......),问题是,我真的不与Python的方式处理与反演的满足,例如~0xABCD123是-180146468我不希望MSB,而只希望反转“当前”位。我可以使用类似的东西,~0xABCD123 & 0XFFFFFFF但是数字的大小实际上可以改变...问题有没有一种方法可以使用运算符动态“投射”或删除Python中的位符号 ~
1 回答

慕的地8271018
TA贡献1796条经验 获得超4个赞
一个简单的技巧:
def invert_int(n):
number_bit_len = n.bit_length()
max_val = (2 ** number_bit_len) - 1
return ~n & max_val
添加回答
举报
0/150
提交
取消