Python 替换'的所有实例_';有空间。如果Sequalance中有多个实例,请仅替换为1个空格
我需要编写一个Python函数,它将用空格替换下划线的所有实例。如果有两个或多个连续下划线,则需要用单个空格替换它们 我可以替换字符,但不能限制要替换的空格数Python 替换'的所有实例_';有空间。如果Sequalance中有多个实例,请仅替换为1个空格,python,python-3.x,Python,Python 3.x,我需要编写一个Python函数,它将用空格替换下划线的所有实例。如果有两个或多个连续下划线,则需要用单个空格替换它们 我可以替换字符,但不能限制要替换的空格数 def replace_trash(strg): newStr = '' for i in strg: if i != '_': newStr += i else: newStr += ' ' return newStr print
def replace_trash(strg):
newStr = ''
for i in strg:
if i != '_':
newStr += i
else:
newStr += ' '
return newStr
print (replace_trash('Please__help___me_to_solve___this_____problem'))
预期结果将是:
请帮助我解决此问题将正则表达式(+=一个或多个“”)的所有匹配项替换为单个空格
重新导入
def更换_垃圾桶(字符串):
返回re.sub(“”+“”,“”,字符串)
打印(替换垃圾(“请帮助我解决这个问题”)
你能给我解释一下它是如何工作的吗。我不明白“if not previous”在这里是如何工作的当找到a_时,previous被设置为1。当另一个字符被选中时,“上一个”设置为0。现在,当找到一个uu时,仅当前一个字符不是uu时,才会添加一个空格。这就是“如果不是以前”情况的原因。
def replace_trash(strg):
newStr = ''
previous = 0
for i in strg:
if i != '_':
newStr += i
previous = 0
else:
if not previous:
newStr += ' '
previous = 1
return newStr