1. 二进制和十进制转换
#!/usr/bin/env python
# encoding=utf-8
def binary2decimal(x):
string = str(x)[2:][::-1]
res = 0
for i,num in enumerate(string):
res += int(num)*2**i
return res
def decimal2binary(x):
res = ""
while x:
m = x%2
res = str(m) + res
x = x//2
return res
def test():
x = 0b1011
print(x)
print(binary2decimal("0b1011"))
print(int(decimal2binary(11), 2))
if __name__ == "__main__":
test()
运行结果:
11
11
11
2. 10进制和16进制的转换
def decimal2hex(x, bin=2):
res = ""
map_dict = {10:"a",11:"b",12:"c",13:"d",14:"e",15:"f"}
while x:
m = x%bin
if m>=10:
m = map_dict[m]
res = str(m) + res
x = x//bin
print("res",res)
return res
def test():
print(int(decimal2hex(31,16), 16))
运行结果:
res 1f
31
本文介绍并演示了二进制到十进制、十进制到二进制以及十进制到十六进制的转换方法。通过Python编程实现这些转换,并展示了具体的运行结果。
1886

被折叠的 条评论
为什么被折叠?



