将文件名变量添加到 Python 中的 HTML 字符串中
Adding filename variable into HTML string in Python
我已经搜索过,但找不到解决方法。我试图让 python 代码循环遍历 .mht 文件的目录。找到文件后,它会将 iframe html 代码写入指向 .mht 的文件。我在定义要编写的 iframe 代码并将文件名变量包含在 src 中时遇到问题。
htmlframe = '''<iframe src="'%s.mht'" class="iframe" scrolling="no" frameborder="0" style="width:100%"></iframe><br>''' % os.path.basename
我得到的错误如下:
Traceback (most recent call last):File "move.py", line 52, in <module>
htmlframe = '''<iframe src="'%s.mht'" class="iframe" scrolling="no"
frameborder="0" style="width:100%"></iframe><br>''' % os.path.basename
TypeError: not enough arguments for format string
提前感谢您的帮助。
对于相当复杂的字符串替换操作,您应该看看模板引擎。使用这样的引擎,通常更容易保持概览并在以后进行修改。标准库中内置了一个非常简单的:https://docs.python.org/2/library/string.html#template-strings
大部分时间就够了!
示例:
from string import Template
s = """<iframe src="$filename" class="iframe" scrolling="no"></iframe>"""
t = Template(s)
print t.substitute(filename="foobar.mht")
测试:
python template.py
<iframe src="foobar.mht" class="iframe" scrolling="no"></iframe>
我已经搜索过,但找不到解决方法。我试图让 python 代码循环遍历 .mht 文件的目录。找到文件后,它会将 iframe html 代码写入指向 .mht 的文件。我在定义要编写的 iframe 代码并将文件名变量包含在 src 中时遇到问题。
htmlframe = '''<iframe src="'%s.mht'" class="iframe" scrolling="no" frameborder="0" style="width:100%"></iframe><br>''' % os.path.basename
我得到的错误如下:
Traceback (most recent call last):File "move.py", line 52, in <module> htmlframe = '''<iframe src="'%s.mht'" class="iframe" scrolling="no" frameborder="0" style="width:100%"></iframe><br>''' % os.path.basename TypeError: not enough arguments for format string
提前感谢您的帮助。
对于相当复杂的字符串替换操作,您应该看看模板引擎。使用这样的引擎,通常更容易保持概览并在以后进行修改。标准库中内置了一个非常简单的:https://docs.python.org/2/library/string.html#template-strings
大部分时间就够了!
示例:
from string import Template
s = """<iframe src="$filename" class="iframe" scrolling="no"></iframe>"""
t = Template(s)
print t.substitute(filename="foobar.mht")
测试:
python template.py
<iframe src="foobar.mht" class="iframe" scrolling="no"></iframe>