def trans_list_to_str(data: list, word_len=2, prefix='') -> str: """ 标准串口字符串表示 """ func_trans_word = lambda x: prefix + ('0' * word_len + hex(x % (0x10 ** word_len))[2:])[-word_len:].upper() return " ".join(map(func_trans_word, data)) def trans_str_to_list(data: str) -> list: """ 标准串口字符串转换列表 """ func_trans = lambda x: int(x, 16) return list(map(func_trans, data.strip().split(" "))) def conv_int_to_array(num: int, big_end=False): """ 数值转字节数组 """ result = [0, 0, 0, 0] if big_end: indexlist = reversed(range(len(result))) else: indexlist = range(len(result)) for i in indexlist: result[i] = int(num % 0x100) num //= 0x100 return result def display_hex(data:int, length:int=2) -> str: """ Hex字符固定最小长度表示 """ return f"0x{data:0{length}X}" def trans_list_to_str_by_word(data: list, big_end=True) -> str: """ 将数据以word格式显示 """ s = [data[i+1] * 0x100 + data[i] for i in range(0, len(data), 2)] r = " ".join(map(hex, s)) print(data) print(trans_list_to_str(data)) print(r) return r