Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
替换Python中特定字符的优雅方法_Python_Replace_Char - Fatal编程技术网

替换Python中特定字符的优雅方法

替换Python中特定字符的优雅方法,python,replace,char,Python,Replace,Char,我有一些字符串在字符内容方面是不可预测的,但我知道每个字符串只包含一个字符“*” 如何用一些非硬编码字符串替换“*”后面的两个字符。非硬编码字符串实际上是计算校验和并转换为字符串: checksum_str = str(hex(csum).lstrip('0x')) 你想要的是: star_pos = my_string.find('*') my_string = my_string[:star_pos] + '*' + checksum_str + my_string[star_pos +

我有一些字符串在字符内容方面是不可预测的,但我知道每个字符串只包含一个字符“*”

如何用一些非硬编码字符串替换“*”后面的两个字符。非硬编码字符串实际上是计算校验和并转换为字符串:

checksum_str = str(hex(csum).lstrip('0x'))

你想要的是:

star_pos = my_string.find('*')
my_string = my_string[:star_pos] + '*' + checksum_str + my_string[star_pos + 3:]

可以使用正则表达式执行此操作:

import re
my_string = re.sub(r'(?<=\*)..', checksum_str, my_string, 1)
重新导入

my_string=re.sub(r')(?就是这样!!干杯!这不会替换,这会插入字符串