比方说,我们想用正则表达式捕捉一些东西,使用 rawstring 来定义模式,哪个模式有重复的元素,里面有变量。而且我们还想使用 format()
字符串格式化形式。如何做到这一点?
import re
text = '"""!some text'
re.findall(r'"{3}{symbol}some\stext'.format(symbol='!'), text)
但是这一行将我们引向一个IndexError
:
# IndexError: tuple index out of range
所以,我的问题是:如何格式化原始字符串,如果它有格式化大括号表达式,并在里面重复大括号表达式?
提前致谢!
最佳答案
使用 f-strings (在 Python 3.6 中引入):
a = 15
print(fr'Escape is here:\n but still {a}')
# => Escape is here:\n but still 15
https://stackoverflow.com/questions/16754594/