How can I selectively escape percent (%) in Python strings?
--------------------------------------------------
Rise to the top 3% as a developer or hire one of them at Toptal: https://topt.al/25cXVn
--------------------------------------------------
Music by Eric Matyas
https://www.soundimage.org
Track title: Romantic Lands Beckon
--
Chapters
00:00 How Can I Selectively Escape Percent (%) In Python Strings?
00:17 Accepted Answer Score 737
00:27 Answer 2 Score 62
00:44 Answer 3 Score 50
00:55 Answer 4 Score 10
01:31 Answer 5 Score 6
01:46 Thank you
--
Full question
https://stackoverflow.com/questions/1067...
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#python #escaping #python27
#avk47
    Rise to the top 3% as a developer or hire one of them at Toptal: https://topt.al/25cXVn
--------------------------------------------------
Music by Eric Matyas
https://www.soundimage.org
Track title: Romantic Lands Beckon
--
Chapters
00:00 How Can I Selectively Escape Percent (%) In Python Strings?
00:17 Accepted Answer Score 737
00:27 Answer 2 Score 62
00:44 Answer 3 Score 50
00:55 Answer 4 Score 10
01:31 Answer 5 Score 6
01:46 Thank you
--
Full question
https://stackoverflow.com/questions/1067...
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#python #escaping #python27
#avk47
ACCEPTED ANSWER
Score 738
>>> test = "have it break."
>>> selectiveEscape = "Print percent %% in sentence and not %s" % test
>>> print selectiveEscape
Print percent % in sentence and not have it break.
ANSWER 2
Score 62
Alternatively, as of Python 2.6, you can use new string formatting (described in PEP 3101):
'Print percent % in sentence and not {0}'.format(test)
which is especially handy as your strings get more complicated.
ANSWER 3
Score 50
try using %% to print % sign . 
ANSWER 4
Score 10
You can't selectively escape %, as % always has a special meaning depending on the following character.
In the documentation of Python, at the bottem of the second table in that section, it states:
'%'        No argument is converted, results in a '%' character in the result.
Therefore you should use:
selectiveEscape = "Print percent %% in sentence and not %s" % (test, )
(please note the expicit change to tuple as argument to %)
Without knowing about the above, I would have done:
selectiveEscape = "Print percent %s in sentence and not %s" % ('%', test)
with the knowledge you obviously already had.