一、场景
本人进行美化发送的邮件内容时,向html 填充数据数据时,出现了该错误。
ValueError: unsupported format character ';' (0x3b) at index 625
二、解题思路
- f-string 与 html
{}
符号冲突,无法进行f-sting - format 与html
{}
符号冲突,无法进行format - 常规的% 进行拼接时,也报了上面那个错误
三、出现的原因与解决方法
- 第一种方式很容易报错,至少我的出现了错误,因为html5中有很多
{}
符号冲突,天晓得与%d、%s
等哪个冲突
aa = """
<style type="text/css">
img {
display: block;
max-width: 100%;
}
</style>
<div>username:%s </div>
<div>age:%s </div>
""" % ('zhangsan', "18" )
- 第二种方式双精度替换来进行填充
aa = """
<style type="text/css">
img {
display: block;
max-width: 100%;
}
</style>
<div>user name:%(username)s </div>
<div>user age:%(age)s </div>
""" % {"username": 'zhangsan', "age": "18"}
- 第三种方式双精度替换来进行填充
aa = """
<style type="text/css">
img {
display: block;
max-width: 100%;
}
</style>
<div>user name:{username}</div>
<div>user age:{age} </div>
""".format(username='zhangsan', age="18")
如果场景刚好解决你的问题,点个赞再走呗,看到能帮助你,这对我很重要