看起来你在试图建立一个网站。为什么不使用一个模板引擎,比如Jinja2,而不是从函数中打印一个HTML片段呢?为此,您将需要一个Python web应用程序,它似乎是在一个web框架中编写的。我会选择Flask这里,开始使用它很简单,Jinja是Flask的默认模板引擎。
如果您只想生成静态HTML文件,我建议您使用Frozen-Flask,它允许您生成可以托管的静态HTML文件,而无需在服务器上部署任何Python web应用程序。只要把生成的文件复制到你的主机上,你就可以开始了。
如果你还想打印一个HTML代码片段,你的代码应该像Ealhad在他的答案中发布的那样。
此外,原始代码还包含一些问题:def pizzatoppings(self):
# you don't need semicolons in Python
toppings = ['mushrooms', 'peppers', 'pepparoni', 'steak', 'walnuts', 'goat cheese', 'eggplant', 'garlic sauce']
# you need to initialize a "ul" variable
ul = "
- "
for s in toppings:
ul += "
"+str(s)+""# following two lines where indented too much. In Python, indentation defines a block of code
ul += "
"return ul