2013-09-21 2 views
-1

Я пытаюсь удалить вопросительные знаки из строки в python, и мне интересно, какой наиболее эффективный способ это сделать. Я предполагаю поиск каждого слова для? это не лучший способ. Просто чтобы уточнить, я ищу, чтобы изменить этоУдаление вопросительных знаков из строки

"What is your name?" 

к этому

"what is your name" 
+0

возможно дубликат [Regex для удаления символа новой строки из строки] (http://stackoverflow.com/questions/18935859/regex-to-remove-newline-character-from-string) – Mark

ответ

2
"What is your name?".replace("?","") #this is the most clear 
#or 
filter(lambda x:x!= "?","What is your name?") 
#or 
"".join(x for x in "What is your name?" if x != "?") 
#or 
"What is your name?".translate(None,"?") #this is my favorite 

и многое другое

2

replace() прост и эффективен:

>>> "What is your name?".replace("?", "") 
'What is your name' 
2

В мое скромное мнение y ou должен смотреть на встроенный метод string.replace().

result = "What is your name?".replace('?', '')