我想从字符串中删除任何括号。为什么这不能正常工作?
>>> name = "Barack (of Washington)"
>>> name = name.strip("(){}<>")
>>> print name
Barack (of Washington
最佳答案
因为这不是 strip()
所做的。它会删除参数中存在的前导字符和尾随字符,但不会删除字符串中间的那些字符。
你可以这样做:
name= name.replace('(', '').replace(')', '').replace ...
或:
name= ''.join(c for c in name if c not in '(){}<>')
或者使用正则表达式:
import re
name= re.sub('[(){}<>]', '', name)
关于Python strip() 多个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3900054/