doubling slashes in a string

Alex Martelli aleaxit at yahoo.com
Sat Oct 7 06:47:56 EDT 2000


"Joshua Muskovitz" <josh at open.com> wrote in message
news:39de8a48_3 at corp.newsfeeds.com...
> Man, I just have to say, I *love* python.  I was struggling with the
problem
> of how to take a pathname and double all of the backslashes in it, so that
> (for example):
>
> c:\foo\bar\zingo.walla.walla --> c:\\foo\\bar\\zingo.walla.walla
>
> And I was trying for figure out how to walk the character list and build a
> new string, and then it dawned on me:
>
> newname = string.join(string.split(oldname,"\\"), "\\\\")
>
> It just keeps getting better and better.  Thanks for inventing it, Guido!

Fully seconded, although:

    newname = oldname.split(r'\').join(r'\\')

or

    newname = oldname.replace(r'\', r'\\')

would strike some of us as being even better yet!-)


Alex






More information about the Python-list mailing list