escaping

Kiuhnm kiuhnm03.4t.yahoo.it
Mon Apr 16 06:03:31 EDT 2012


On 4/16/2012 4:42, Steven D'Aprano wrote:
> On Sun, 15 Apr 2012 23:07:36 +0200, Kiuhnm wrote:
>
>> This is the behavior I need:
>>       path = path.replace('\\', '\\\\')
>>       msg = ". {} .. '{}' .. {} .".format(a, path, b)
>> Is there a better way?
>
>
> This works for me:
>
>>>> a = "spam"
>>>> b = "ham"
>>>> path = r"C:\a\b\c\d\e.txt"
>>>> msg = ". %s .. %r .. %s ." % (a, path, b)
>>>> print msg
> . spam .. 'C:\\a\\b\\c\\d\\e.txt' .. ham .

I like this one. Since I read somewhere that 'format' is preferred over 
'%', I was focusing on 'format' and I didn't think of '%'.
Anyway, it's odd that 'format' doesn't offer something similar.

Kiuhnm



More information about the Python-list mailing list