Python字符串与十六进制字符串相互转换
在编程中,有时候我们需要将字符串与十六进制字符串之间进行转换。下面我们将展示如何使用Python实现这两个功能。
1. 将字符串转换为十六进制字符串
我们可以创建一个函数 ascii_to_hex_string
来实现这个功能。该函数将输入的字符串转换为对应的ASCII码列表,然后将每个ASCII码转换为两位的十六进制字符串,并用空格连接它们。
def ascii_to_hex_string(input_str):
ascii_list = [ord(char) for char in input_str]
hex_string = ' '.join(format(num, '02X') for num in ascii_list)
return hex_string
# 测试
str_test = "posTar:200\n"
result_hex = ascii_to_hex_string(str_test)
print(result_hex)
运行上述代码,输出将是:"70 6F 73 54 61 72 3A 32 30 30 0A"。
2. 将十六进制字符串转换为字符串
同样地,我们可以创建一个函数 hex_string_to_ascii 来实现将十六进制字符串转换为字符串的功能。该函数先将输入的十六进制字符串分割成整数列表,然后将每个整数转换为相应的ASCII字符,最后将它们连接起来形成最终的字符串。
def hex_string_to_ascii(hex_string):
hex_list = [int(hex_str, 16) for hex_str in hex_string.split()]
result_str = ''.join(chr(num) for num in hex_list)
return result_str
# 测试
str_test_hex = "70 6F 73 54 61 72 3A 32 30 30 0A"
result = hex_string_to_ascii(str_test_hex)
print(result)
运行上述代码,输出将是:"posTar:200\n"。
以上就是将字符串与十六进制字符串相互转换的简单方法。在实际应用中,这些功能可能在数据传输、编码处理等场景中发挥作用。
标签:十六进制,string,Python,hex,str,字符串,ascii From: https://www.cnblogs.com/dapenson/p/17947191