python replace()不移除换行符

8zzbczxx  于 2023-01-08  发布在  Python
关注(0)|答案(1)|浏览(158)

我正在尝试做一个"过滤器",从字符串中删除某些字符。
我想删除:
括号()
单引号'
逗号,
换行符\n
我使用的代码如下所示:

i = {
    'content':('\n\nPosh Pantry Boutique',)
}

table = dict.fromkeys(map(ord, ")(,'",))
i['content'] = (str(i['content']).translate(table)).replace('\n','')

#for readability, this code can also look like this:
#x = str(i['content'])
#x = x.translate(table)
#x = x.replace('\n','')
#i['content'] = x

print(i['content'])

但是,这段代码的输出将删除除换行符之外的所有字符。
第一个月
我试过使用. strip(),但没有效果。
那么,我做错了什么,或者,没有办法删除这些字符吗?

6tr1vspr

6tr1vspr1#

您所需要做的就是添加一个斜杠。\是转义字符,因此您需要对斜杠进行转义。\\n将解决您的问题。
供您参考的文档。https://docs.python.org/3/reference/lexical_analysis.html

i = {
    'content':('\n\nPosh Pantry Boutique',)
}

table = dict.fromkeys(map(ord, ")(,'",))
i['content'] = (str(i['content']).translate(table)).replace('\\n','')

#for readability, this code can also look like this:
#x = str(i['content'])
#x = x.translate(table)
#x = x.replace('\n','')
#i['content'] = x

print(i['content'])

相关问题