How can I escape the format string?

前端 未结 3 1008
-上瘾入骨i
-上瘾入骨i 2020-12-19 08:46

Is it possible to use Python\'s str.format(key=value) syntax to replace only certain keys.

Consider this example:

my_string = \'Hello {n         


        
3条回答
  •  粉色の甜心
    2020-12-19 09:28

    You can escape my_name using double curly brackets, like this

    >>> my_string = 'Hello {name}, my name is {{my_name}}!'
    >>> my_string.format(name='minerz029')
    'Hello minerz029, my name is {my_name}!'
    

    As you can see, after formatting once, the outer {} is removed and {{my_name}} becomes {my_name}. If you later want to format my_name, you can simply format it again, like this

    >>> my_string = 'Hello {name}, my name is {{my_name}}!'
    >>> my_string = my_string.format(name='minerz029')
    >>> my_string
    'Hello minerz029, my name is {my_name}!'
    >>> my_string.format(my_name='minerz029')
    'Hello minerz029, my name is minerz029!'
    

提交回复
热议问题