[英]How can I print curly braces with this style formatted text in python
以下代碼 -
d = {'name':'Joe',
'age': 25
}
mypara ='''
My name is {name}.
- I am {age} year old.
'''
print(mypara.format(**d))
給出以下 output:
My name is Joe.
- I am 25 year old.
我怎樣才能得到 output 如下所示:
My name is {Joe}.
- I am {25} year old.
以下工作,但我正在尋找使用字典而不是變量 -
name = 'Joe'
age = 25
mypara = f'''
My name is {{{name}}}.
- I am {{{age}}} year old.
'''
print(mypara)
Output:
My name is {Joe}.
I am {52} year old.
這有效:
d = {'name':'Joe', 'age': 25}
my_para = f'''
My name is {{{d['name']}}}.
- I am {{{d['age']}}} years old.
'''
print(my_para)
您使用多行字符串有什么原因嗎?
您可以直接從字典中分配:
d = {'name':'Joe',
'age': 25
}
mypara ='''
My name is {'''+ str(d['name'])+'''}.
- I am {''' + str(d['age']) + '''} year old.
'''
print mypara
Output :
My name is {Joe}.
- I am {25} year old.
希望這能回答你的問題!!!
有replace
為你做打字。
請注意,此代碼不包含 f 字符串。
將您的字符串寫為:
mypara = '''
My name is {name}.
- I am {age} year old.
'''
然后使用:
mypara = mypara.replace('{','{{{').replace('}','}}}')
這可以同時進行,而不是與re.sub
順序進行,並且可能會根據輸入進行更具體的替換。
生產:
mypara = '''
My name is {{{name}}}.
- I am {{{age}}} year old.
'''
然后當它通過以下方式格式化時:
mypara = mypara.format(name='Bob', age=45)
結果是:
mypara = '''
My name is {Bob}.
- I am {45} year old.
'''
嘗試這個:
d = {'name':'Joe',
'age': 25
}
mypara ='''
My name is {%(name)s}.
- I am {%(age)s} year old.
'''
print(mypara % d)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.