trouble using \ to escape %

Dan Bishop danb_83 at yahoo.com
Fri Apr 15 19:20:59 EDT 2005


Lucas Machado wrote:
> I'm writing a python script that modifies the smb.conf file, and i
need
> to write the characters '%U' in the file.  I tried making a string
like
> so:
>
> str1 = "[%s%s]\n\tpath = /mnt/samba/%s%s/\%U" % (list[0], list[1],
> list[0], list[1])
>
> but i keep getting: "TypeError: not enough arguments for format
> string". I've also tried making the string:
>
> str1 = "[%s%s]\n\tpath = /mnt/samba/%s%s/\%" % (list[0], list[1],
> list[0], list[1])
>
> but i get: "ValueError: incomplete format". These errors lead me to
> believe that for some reason it is not escaping the '%' character.
> There has to be a way to write '%' to a file. Thanks in advance..

>>> percentage = 93
>>> # The string % operator uses "%%" for the percent sign.
>>> format_string = "%d%% of all statistics are made up on the spot."
>>> print format_string % percentage
93% of all statistics are made up on the spot.
>>> # When the % operator is not used, "%" is just another character.
>>> print format_string
%d%% of all statistics are made up on the spot.
>>>




More information about the Python-list mailing list