Question: In the python interpreter:
'pradeep'.lstrip('prade') gives an output of ''.
I was expecting this to return 'ep'.
Why is that assumption wrong ?

Answer: 
Martjin Pieters is right, the problem is that .lstrip() removes the characters p,r,a,d,e from pradeep.

You could possibly use the code below to do what you want to do:

```
a = 'pradeep'
b = a.split('prade')[1]

```
As general function for str trimming:

```
def trim(s, start=None, end=None):
    ''' Trim `start` and/or `end` for str `s` '''
    if start is not None and s.startswith(start): s = s[len(start):]
    if end is not None and s.endswith(end): s = s[:-len(end)]
    return s

trim('pradeep', start='prade') # outputs 'ep'
trim('pradeep', start='pr', end='ep') # outputs 'ade'

```

or 

```
trim = lambda s, x: s.split(x, 1)[1] if s.startswith(x) else s
trim('pradeep', 'prade') # outputs 'ep'
trim('pradeep', 'ppp') # outputs 'pradeep'

```

or 

```
trim = lambda s, x: s.replace(x, '', 1) if s.startswith(x) else s
trim('pradeep', 'prade') # outputs 'ep'
trim('pradeep', 'ppp') # outputs 'pradeep'

```

or 

```
trim = lambda s, x: s[len(x):] if s.startswith(x) else s
trim('pradeep', 'prade') # outputs 'ep'
trim('pradeep', 'ppp') # outputs 'pradeep'

```