Python中strip的奇怪字符串处理问题



有人能向我解释以下行为吗?这没有任何意义。

我有一个字符串:

In [170]: t = "c:\website\site-env\scripts"

我试图从前面去掉"c:\website",但它不起作用:

In [171]: t.strip("c:\website")
Out[171]: '-env\scrip'

我后退一点,看看它在哪里坏了:

In [172]: t.strip("c:\websi")
Out[172]: 'te\site-env\script'

出于某种原因,它发生在"t"之后!

In [173]: t.strip("c:\websit")
Out[173]: '-env\scrip'

有什么想法吗?我被难住了。

strip使用字符,而不是字符串。例如,"abcdefg".strip("facedb")将导致"g"。使用切片:

t[len(r'c:website'):] if t.startswith(r'c:website') else t

最新更新