In article <[EMAIL PROTECTED]>, [EMAIL PROTECTED] wrote: > I'm using Python 2.3.5 and when I type the following in the interactive > prompt I see that strip() is not working as advertised: > > >>>s = 'p p:p' > >>>s.strip(' :') > 'p p:p' > > Is this just me or does it not work? I want to get rid of all ' ' and > ':' in the string. I've checked the doc and from what I can tell this > is what strip() is supposed to do.
In /my/ docs, s.strip return a copy of s where all /leading/ and /heading/ spaces are removed. s.strip(x) does the same but removing chars of x. So, what you're asking for by s.strip(' :') is "remove heading or leading space or ':' chars", /not/ "remove or leading or ':' chars". If you want to get rid of ' ' and ':' anywhere in s, i think that string.maketrans and s.translate will do the job: >>> import string >>> s = 'p p:p' >>> ident = string.maketrans('', '') >>> s.translate(ident,' :') 'ppp' -- Jaco -- http://mail.python.org/mailman/listinfo/python-list