1

この返された文字列をクリーンアップするためのより高速な方法があるかどうかを調べようとしています。それともこれが最善の方法ですか?それは機能しますが、より効率的な方法が常に求められています。

次の出力を返す関数があります。

"("This is your:, House")"

印刷する前に次のようにクリーンアップします。

a = re.sub(r'^\(|\)|\,|\'', '', a)
print a

>>> This is your: House

また、人々が物事を行うさまざまな方法から多くのことを学びます。

4

2 に答える 2

2

これを行うために正規表現を使用する必要はありません。

>>> import string
>>> a = '"("This is your:, House")"'
>>> ''.join(x for x in a if x not in string.punctuation)
'This is your House'

>>> tbl = string.maketrans('', '')
>>> a.translate(tbl, string.punctuation)
'This is your House'
于 2013-08-07T05:26:23.537 に答える
0
s='"("This is your:, House")"'
s.replace('\"','').replace('(','').replace(')','').replace(',','').replace(':','')
'This is your House'
于 2013-08-07T11:56:26.580 に答える