在HTML/.format()中使用Python变量

在HTML/.format()中使用Python变量,python,html,variables,string.format,Python,Html,Variables,String.format,我真的很难让“标记”出现。我不知道如何正确使用.format()来显示字符串中的标记 变量是否需要位于字符串中的特定位置?试图第一次掌握这个。对不起,如果我问的是基本问题 继续获取:“”。格式化(标记)键错误:“字体系列”。不确定问题出在哪里 marker = "AUniqueMarker" # Create the body of the message (a plain-text and an HTML version). text = "This is a test messa

我真的很难让“标记”出现。我不知道如何正确使用
.format()
来显示字符串中的标记

变量是否需要位于字符串中的特定位置?试图第一次掌握这个。对不起,如果我问的是基本问题

继续获取:
“”。格式化(标记)键错误:“字体系列”
。不确定问题出在哪里

marker = "AUniqueMarker"    


# Create the body of the message (a plain-text and an HTML version).
text = "This is a test message.\nText and html."
html = """\
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml"
xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 15">
<meta name=Originator content="Microsoft Word 15">
<link rel=File-List href="Law_files/filelist.xml">
<!--[if gte mso 9]><xml>

# (...)

-->
</style>
<!--[if gte mso 10]>
<style>
 /* Style Definitions */
 table.MsoNormalTable
    {mso-style-name:"Table Normal";
    mso-tstyle-rowband-size:0;
    mso-tstyle-colband-size:0;
    mso-style-noshow:yes;
    mso-style-priority:99;
    mso-style-parent:"";
    mso-padding-alt:0in 5.4pt 0in 5.4pt;
    mso-para-margin:0in;
    mso-para-margin-bottom:.0001pt;
    mso-pagination:widow-orphan;
    font-size:10.0pt;
    font-family:"Calibri","sans-serif";
    mso-ascii-font-family:Calibri;
    mso-ascii-theme-font:minor-latin;
    mso-hansi-font-family:Calibri;
    mso-hansi-theme-font:minor-latin;}
</style>
<![endif]--><!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1"/>
 </o:shapelayout></xml><![endif]-->
</head>

<body lang=EN-US style='tab-interval:.5in'>

{marker}
</body>

</html> 
 """.format(marker=marker)
marker=“AUniqueMarker”
#创建消息正文(纯文本和HTML版本)。
text=“这是一条测试消息。\n文本和html。”
html=”“”\
{marker}
“”。格式(标记=标记)

您需要避免字符串中存在其他大括号(
{
}
),否则字符串将被
格式
误解

您必须重复这些字符才能对其进行转义。在要调用的字符串中,更改行

{mso-style-name:"Table Normal";


对于结束括号也是如此。

您必须将字符串中的
{
}
加倍,否则
格式
将尝试解释大括号之间的文本

您可以使用“替换”来执行此操作:
编辑:
replace
{marker}
转换为
{marker}
,因此它不会被
格式解释。…

来自:如果需要在文本中包含大括号字符,可以通过加倍来转义:
{
}
。非常感谢。它成功了。必须避开HTML中的所有大括号。感谢您的快速响应。我想要花一周时间才能找回任何东西!谢谢,主要想法就在那里,它帮助解决了问题:)
{{mso-style-name:"Table Normal";
html = """\
your html code
""".replace("{", "{{").replace("}", "}}").format(marker=marker)