如何从python中删除字符串中的标点符号?我按照有人在Stackoverflow上发布的方法,但它无法正常工作。
punctuation = ['(', ')', '?', ':', ':', ',', '.', '!', '/', '"', "'"]
str = input("Hi, my name is Yael Shapiro!")
for i in punctuation:
str = str.replace(i,"")
print(str)
答案 0 :(得分:0)
我发现使用gencomp和"".join()
的组合效果很好:
>>> import string
>>> s = "Does this string. Have punctuation?"
>>>
>>> "".join((char for char in s if char not in string.punctuation))
'Does this string Have punctuation'
>>>
作为旁注,请勿将str
用作already has a meaning in the Python language的标识符。
您的代码无效的原因可能是因为您误解了input()
的作用。 input()
只是从用户那里获得输入并返回输入。在我看来,你想做的就是有一个字符串,其中只做:sstr = "Hi, my name is Yael Shapiro!"