python 负数转换16进制
转载:https://blog.csdn.net/qq_21644175/article/details/79794969
import struct
print(str(struct.pack("i",-15))[4:6])
print(hex(16**7 -15)[-2:])
print(hex(-15))
print()
print(str(struct.pack("i",-263))[4:6])
print(hex(16**7 -263)[-2:])
print(hex(-263))
print()
print(str(struct.pack("i",-10008))[4:6])
print(hex(16**7 -10008)[-2:])
print()
以下为输出结果:
f1
f1
-0xf
f9
f9
-0x107
e8
e8
c++算十六进制的代码,大意是 (假定x为正数):y= x % 256, 然后256 - y(若x为负数是256+y),然后在对结果进行十六进制转换
我又在python里面试了一下
a = -99999
b = a % 256
print(b)
print(hex(b))