我的以下代码有问题:

name = "epubtxt\ursita.txt"


而且我想删除目录,以获取输出ursita.txt

我正在这样做:

name.lstrip('epubtxt\\')


主要问题是我得到以下输出:


  rsita.txt


这是怎么了?

最佳答案

s1.lstrip(s2)不会从s2的左侧剥离整个s1。它的作用是从s2的左侧去除s1中包含的所有字符。

例子:

'aaabbbccc'.lstrip('a') == 'bbbccc'
'aaabbbccc'.lstrip('ac') == 'bbbccc'
'aaabbbccc'.lstrip('ab') == 'ccc'


在您的示例中,'epubtxt\\'包含字符u,因此反斜杠后的u被去除。

您可能需要的是:

if name.startswith('epubtxt\\'):
    name[len('epubtxt\\'):]

10-05 21:26