[英]Weird python behavior when stripping from a string
是什么导致了这种奇怪的行为???
In [41]: s = "Mr Magoo Myyopia"
In [42]: t = s.strip("Mr Magoo")
In [43]: t
Out[43]: 'yyopi'
但是如果我改变字符串的内容......
In [44]: s = "hello world again"
In [45]: t = s.strip("hello world")
In [46]: t
Out[46]: 'again'
文档字符串非常清楚地解释了它:
返回删除了前导和尾随空格的字符串的副本。 如果给出了 chars 而不是 None,则改为删除 chars 中的字符。
给strip()
的任何和所有字符如果它们是前导或尾随的,都将从字符串中删除。 'Mr Magoo'
包含一个'a'
,它也出现在'Myyopia'
部分——因此它也被剥离了。
'hello world'
没有出现在'again'
中的字符,因此它不会被剥离。
strip()
适用于字符,而不是子字符串。
strip
替换作为字符串提供的最外层字符。 我没能认出“最外层”的一面。 感谢大家。
条带 function 删除侧面的任何相似字符 它删除侧面的字母并再次检查侧面
例子:
>>> s = '121'
>>> s.strip('1')
'2'
>>> s.strip('2')
'121'
>>>
>>> s.strip('12')
''
>>>
>>>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.