我正在编写一个 Python 脚本,当我运行它时,它会将来自不同文件的文本拼凑在一起,这样我就可以创建网站的替代版本,以轻松比较不同的设计,并确保它们都具有相同的固有数据,即。菜单项在所有版本中都是一致的。
一个特定的问题领域是确保菜单,即不同餐点的聚宝盆,总是相同的。因此我做了这个功能:
def insert_menu():
with open("index.html", "r+") as index:
with open("menu.html", "r+") as menu:
for i in index:
if "<!-- Insert Menu here -->" in i:
for j in menu:
index.write(j)
但是,它并没有按照我想要的方式运行,因为我一直无法找到一种方法来从 Stack Overflow 上的其他答案中提取我需要的内容。
在当前状态下,它将附加我存储menu.html
在index.html
.
我希望它将文本写在menu.html
该行下方,该行位于index.html
(但不一定总是在同一行号,因此排除了在特定行写入的选项),包含<!-- Insert Menu here -->
. 然后,在里面的所有内容menu.html
都写完之后,index.html
我想可以index.html
这么说来“继续”。
基本上我的意思是将文本从包含的行之后menu.html
插入,但我必须保留该评论下方的更多文本(脚本等)index.html
<!-- Insert Menu here -->
从index.html
文档中复制,这是围绕<!-- Insert Menu here -->
:
<html>
<body>
<div id="wrapper">
<div id="container">
<div class="map">
</div>
<!-- Insert Menu here -->
</div><!-- Container ends here -->
</div><!-- Wrapper ends here -->
</body>
</html>
请注意,在index.html
上面的块中都缩进了一个更大的 div,我不能轻易地在 SO 上复制它。
我怎样才能改变我的代码来达到预期的结果,还是我要以一种非常迂回的方式来解决这个问题?
而且,我该如何澄清这个问题以帮助您帮助我?