用python进行十六进制计算
我使用了Python2.7,我知道它已经过时了,但是对于这个例子,我更容易理解。假设我有十六进制的用python进行十六进制计算,python,hex,Python,Hex,我使用了Python2.7,我知道它已经过时了,但是对于这个例子,我更容易理解。假设我有十六进制的0x70/3='0x25,但我知道25+25+25=6F不等于70,实际上应该是25+25+26=70 >>> a = hex(0x70 / 3) >>> print a 0x25 >>> print hex(int(a, 16) * 2) 0x4a >>> print hex(int(a, 16) * 3) 0x6f >
0x70/3='0x25
,但我知道25+25+25=6F
不等于70
,实际上应该是25+25+26=70
>>> a = hex(0x70 / 3)
>>> print a
0x25
>>> print hex(int(a, 16) * 2)
0x4a
>>> print hex(int(a, 16) * 3)
0x6f
>>> print hex(int(a, 16) * 3 + 1)
0x70
我希望python脚本将0x70
除以3
,得到0x25
,然后自我检查,以获取25
*3
并填充剩余的任何所需数字(在本例中,+1
使其再次等于70
,因此这是真的。但它不能硬编码,因为不同的十六进制数并不总是需要添加+1
数字。基本上,我需要弄清楚如何编写脚本,使它知道它应该是25+25+26=70
,因为我以后需要这3个数字。)使用。这对我来说有点难解释,所以我很抱歉。如果脚本能够打印出真正的0x70/3
会让我的生活更轻松的内容,那就更好了。例如:
a = hex(0x70 / 3)
print a
0x25
0x25
0x26
我刚刚安装了Python3,但也许它也能正常工作
hex(0x70 / 3)
为我打印一个错误,因为它是一个带rest的除法。0x70=112(以10为基数)112/3=37,句点3。末尾的句点3不能用十六进制表示(据我所知)
如果使用除法而不使用休息,则将得到0x25
hex(0x70 // 3)
如果只计算其余部分,则将得到0x01
hex(0x70 % 3)
分母是固定的还是变化的?您可以使用不带剩余分母的结果或除法-1次,最后一次结果必须添加剩余除法的结果