[英]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.