我试图同时使用Python(3.6)中的变量和乳胶符号作为Matplotlib中的标题。
但是,当我使用我的默认方法时,它似乎混淆了用于乳液符号的{}与Python中的变量之间的是什么:
plt.title(r'E_obs and E_syn @ t={0}, $Q_i^{-1}$={1}, $\ell$={2}'.format(time, q_intr, lpath))
它没有运行,因为它似乎混淆了{-1},尝试读取是作为.format()中声明的变量的索引。错误是:
KeyError: '-1'
经过一些研究后,我尝试的是:
plt.title(f'E_obs and E_syn @ t={time}, $Q_i^{-1}$={q_intr}, $\ell$={lpath}')
它运行,但我的-1,应该在我的Q_i顶部只是一个-和1是在同一水平的Q。
有什么建议吗?
附注:我刚到这个论坛问自己的问题,任何关于这方面的建议都是欢迎的。
发布于 2019-03-21 11:27:16
如果format
不应该考虑一些括号,那么您应该将其加倍(例如,{{-1}}
)。
请参见https://docs.python.org/3.4/library/string.html#formatstrings:
如果您需要在文字文本中包含大括号字符,则可以通过加倍:{和}来转义。
就你的情况而言,我希望以下几点能够奏效:
r'E_obs and E_syn @ t={0}, $Q_i^{{-1}}$={1}, $\ell$={2}'.format(time, q_intr, lpath)
https://stackoverflow.com/questions/55279386
复制相似问题