[Tutor] lstrip removes '/' unexpectedly
Eric Brunson
brunson at brunson.com
Mon Dec 3 14:53:41 CET 2007
Ricardo Aráoz wrote:
> Danny Yoo wrote:
>
>>> Hello:
>>> I'm seeing some strange behavior with lstrip operating
>>> on string representations of *nix-style file paths
>>> Example:
>>>
>>>>>> s = '/home/test/'
>>>>>> s1 = s.lstrip('/home')
>>>>>> s1
>>>>>>
>>> 'test/' ## '/test/' was expected! '/' was unexpectedly removed
>>> Any comments or corrective measures are welcome
>>>
>>
>> Hi Tim,
>>
>> Here's another example to help you see what's going on:
>>
>> ##########################
>>
>>>>> s = '/home/test/'
>>>>> s1 = s.lstrip('/ehmo')
>>>>> s1
>>>>>
>> 'test/'
>> ##########################
>>
>> Take a closer look at the documentation of lstrip, and you should see that
>> what it takes in isn't treated as a prefix: rather, it'll be treated as a
>> set of characters.
>>
>>
>
> But then the real bug is why does it not strip the trailing '/' in
> 'test/' or the 'e' that is in your set?
>
>
Because it's lstrip(), the "L" meaning "left". Not strip() or rstrip().
More information about the Tutor
mailing list