我的字符串在字符内容方面是不可预测的,但我知道每个字符串只包含一个字符'*'。
如何使用一些非硬编码字符串替换'*'后面的两个字符。非硬编码字符串实际上是计算校验和并转换为字符串:
checksum_str = str(hex(csum).lstrip('0x'))
答案 0 :(得分:1)
你想要这样的东西:
star_pos = my_string.find('*')
my_string = my_string[:star_pos] + '*' + checksum_str + my_string[star_pos + 3:]
答案 1 :(得分:1)
您可以使用正则表达式执行此操作:
import re
my_string = re.sub(r'(?<=\*)..', checksum_str, my_string, 1)