我想从 strip 中删除尾随空格和其他一些字符。这是示例输入/输出(明确标记的制表符和换行符):
Input:
"\t [[ dwarf ]]] \n"
Output:
"dwarf"
现在我理论上可以像这样解决我的问题:
x = x.strip().strip("[]").strip().strip("[]")
这应该会用尽我的数据库中可能发生的所有组合;但是,如果我们有更多级别的括号和空格,我仍然需要更改代码。我可以用循环一般地解决这个问题,但它同样丑陋且效率低下。有没有更好的方法,或者告诉 strip 不要使用整个字符串,而是使用我提供的字符的方法?
请您参考如下方法:
你只需要调用一次str.strip:
In [6]: import string
In [7]: "\t [[ dwarf ]]] \n".strip("[]" + string.whitespace)
Out[7]: 'dwarf'
string.whitespace是一个包含所有 (ascii) 空白字符的字符串。 S.strip("[]"+ string.whitespace) 将去除所有 [, ] 和空白字符的组合。
