欢迎访问宙启技术站
智能推送

Python代码转换为HTML格式的实现方式(使用Pygments.formatters.html)

发布时间:2023-12-11 06:00:38

将Python代码转换为HTML格式可以使用Pygments库中的HtmlFormatter类来实现。HtmlFormatter是一个Pygments中的格式化器,可以将代码高亮显示并转换为HTML格式。

以下是一个示例的Python代码:

from pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import HtmlFormatter

def code_to_html(code):
    lexer = PythonLexer()
    formatter = HtmlFormatter()
    return highlight(code, lexer, formatter)

# 将Python代码转换为HTML格式
code = '''
def add(a, b):
    return a + b

result = add(3, 5)
print(result)
'''
html_code = code_to_html(code)

# 将HTML代码输出到文件
with open('code.html', 'w') as file:
    file.write(html_code)

在上面的代码中,code_to_html函数使用highlight函数将输入的Python代码转换为HTML格式。highlight函数接受三个参数:代码字符串、代码的词法分析器(Lexer)和格式化器(Formatter)。在这个例子中,我们使用PythonLexer作为词法分析器,HtmlFormatter作为格式化器,来将Python代码转换为带有HTML标签的代码。

接下来,我们调用code_to_html函数将Python代码转换为HTML格式,并将结果保存到html_code变量中。然后,我们可以将html_code输出到文件中,如示例中的code.html文件。

运行上面的代码后,code.html文件将包含转换后的HTML代码,其中的Python代码会以高亮显示的形式呈现。

注意:上述代码中使用的highlight函数需要先安装Pygments库,可以使用以下命令进行安装:

pip install pygments

此外,HtmlFormatter类具有许多可配置的选项,可以自定义生成的HTML代码的外观。例如,可以设置背景颜色、字体大小和样式等。有关更多详细信息,请参阅Pygments的文档。