给出二进制、十进制、十六进制之间相互转换的python代码
时间: 2023-10-26 20:08:00 浏览: 91
以下是Python代码示例,可以实现二进制、十进制、十六进制之间的相互转换:
# 将二进制字符串转换为十进制数值
def binary_to_decimal(binary_str):
decimal = int(binary_str, 2)
return decimal
# 将十进制数值转换为二进制字符串
def decimal_to_binary(decimal):
binary_str = bin(decimal)[2:]
return binary_str
# 将十六进制字符串转换为十进制数值
def hexadecimal_to_decimal(hex_str):
decimal = int(hex_str, 16)
return decimal
# 将十进制数值转换为十六进制字符串
def decimal_to_hexadecimal(decimal):
hex_str = hex(decimal)[2:]
return hex_str
# 将二进制字符串转换为十六进制字符串
def binary_to_hexadecimal(binary_str):
decimal = binary_to_decimal(binary_str)
hex_str = decimal_to_hexadecimal(decimal)
return hex_str
# 将十六进制字符串转换为二进制字符串
def hexadecimal_to_binary(hex_str):
decimal = hexadecimal_to_decimal(hex_str)
binary_str = decimal_to_binary(decimal)
return binary_str
# 测试代码
print(binary_to_decimal('101010')) # 输出 42
print(decimal_to_binary(42)) # 输出 '101010'
print(hexadecimal_to_decimal('2A')) # 输出 42
print(decimal_to_hexadecimal(42)) # 输出 '2a'
print(binary_to_hexadecimal('101010')) # 输出 '2a'
print(hexadecimal_to_binary('2A')) # 输出 '101010'
注意:以上代码示例仅供参考,实际应用中还需要考虑输入的合法性、位数等问题。
阅读全文