Python中如何移除字符串括号逗号并实现RLE/原始数据转十六进制?
解决RLE/原始数据转十六进制的问题
直接处理整数列表(推荐)
如果你的输入已经是Python列表(比如[3, 15, 6, 4]),完全不需要处理括号和逗号,直接对列表中的整数进行十六进制转换即可:
data = [3, 15, 6, 4] # 把每个数字转成小写十六进制字符串,再拼接 hex_result = ''.join(f'{num:x}' for num in data) print(hex_result) # 输出: 3f64
如果需要大写十六进制,把{num:x}改成{num:X}即可,输出会是3F64。
处理字符串格式的输入
如果你的输入是带括号和逗号的字符串(比如"[3, 15, 6, 4]"),才需要先清理符号,转换为整数列表再处理:
input_str = "[3, 15, 6, 4]" # 去掉首尾的[],移除空格,按逗号分割成数字字符串 cleaned_parts = input_str.strip('[]').replace(' ', '').split(',') # 转换为整数列表 data = [int(part) for part in cleaned_parts] # 生成十六进制结果 hex_result = ''.join(f'{num:x}' for num in data) print(hex_result) # 输出: 3f64
关键说明
- 优先直接操作整数列表,这是最简洁高效的方式,无需额外处理符号。
- 只有当输入是字符串格式时,才需要清理括号、逗号和空格,转换为整数后再做十六进制转换。
内容的提问来源于stack exchange,提问作者Guhan Gnanam
相关产品推荐
相关产品推荐

