2 回答
TA贡献1824条经验 获得超8个赞
那是因为您从第一行的方法返回,在return text.replace(" ",''). 将其更改为text = text.replace(" ", ""),它应该可以正常工作。
此外,缩进可能在您的帖子中搞砸了,可能是在复制粘贴期间。
完整的方法片段:
def remove_punctuation(text):
text = text.replace(" ",'')
exclude = set(string.punctuation)
return ''.join(ch for ch in text if ch not in exclude)
TA贡献1810条经验 获得超5个赞
您可以使用str以下方法删除不需要的字符:
import string
tr = ''.maketrans('','',' '+string.punctuation)
def remove_punctuation(text):
return text.translate(tr)
txt = 'Point.Space Question?'
output = remove_punctuation(txt)
print(output)
输出:
PointSpaceQuestion
maketrans创建替换表,它接受 3 str-s:第一个和第二个必须等长,第一个的第 n 个字符将替换为第二个的第 n 个字符,第三个str是要删除的字符。您只需要删除(而不是替换)字符,因此前两个参数是空str的。
添加回答
举报