为了账号安全,请及时绑定邮箱和手机立即绑定

Python反转数字

Python反转数字

DIEA 2021-03-30 14:10:37
首先,我不是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


查看完整回答
反对 回复 2021-04-05
  • 1 回答
  • 0 关注
  • 180 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号