我写了一个函数接受一个有多个值的字典。它的功能类似于“邮件合并”,将字典中的值插入到 HTML 中的不同位置。然后所有 HTML 都返回到不同的字典中。
这对于长 HTML 文件不是很有效。我正在寻找一种更好的方法,将 20 多个值插入到可能长达数百行的 HTML 中。
下面包含的简化版本显示了低效的方法。
def build_html(mail_data):
html_to_convert = {}
for data in mail_data:
export_html = '<html><head><title>'
export_html += str(data['html_header'])
export_html += '</title></head><body>'
export_html += str(data['html_body'])
export_html += '</body></html>'
html_to_convert[str(data['unique_id'])] = export_html
return html_to_convert
最佳答案
您可以尝试字符串格式化而不是连接:
def build_html(mail_data):
html_to_convert = {}
for data in mail_data:
export_html = '<html><head><title>%s</title></head><body>%s</body></html>' % (str(data['html_header']), str(data['html_body']))
html_to_convert[str(data['unique_id'])] = export_html
return html_to_convert
此外,在数据不是字符串的情况下,您可以使用正确的格式化标志来加快处理速度,而不是将其转换为字符串。
关于python - 寻求更好的 Python 3.x+ 方法在一个函数中构建多个不同的 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45841514/