9

例えば:

asking="hello! what's your name?"

私はこれを行うことができますか?

asking.strip("!'?")
4

4 に答える 4

22

本当に簡単な実装は次のとおりです。

out = "".join(c for c in asking if c not in ('!','.',':'))

他のタイプの句読点を追加し続けます。

より効率的な方法は

import string
stringIn = "string.with.punctuation!"
out = stringIn.translate(stringIn.maketrans("",""), string.punctuation)

編集:効率とその他の実装については、さらにいくつかの議論があります: Python で文字列から句読点を削除する最良の方法

于 2013-04-17T03:36:29.100 に答える
15
import string

asking = "".join(l for l in asking if l not in string.punctuation)

でフィルタリングしstring.punctuationます。

于 2013-04-17T03:31:55.147 に答える
0

これは機能しますが、より良い解決策があるかもしれません。

asking="hello! what's your name?"
asking = ''.join([c for c in asking if c not in ('!', '?')])
print asking
于 2013-04-17T03:35:59.097 に答える