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

Python中使用Pygments.styleStyle()实现不同语法的代码高亮

发布时间:2024-01-11 05:23:39

Pygments是一个通用的语法高亮工具,可以支持多种编程语言和输出格式。Pygments提供了一个Style类来定义不同语法的代码高亮样式。下面是一个使用Pygments的例子,演示了如何使用Pygments自定义Style来高亮Python代码。

首先,需要安装Pygments。可以使用pip安装Pygments:

pip install Pygments

接下来,创建一个新的Python文件,命名为highlight_code.py。首先,引入pygmentspygments.lexers模块:

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

然后,创建一个highlight_code函数,该函数接受一个Python代码字符串,并输出高亮的HTML代码:

def highlight_code(code):
    lexer = PythonLexer()
    formatter = HtmlFormatter(style='default')
    return highlight(code, lexer, formatter)

在上面的代码中,我们使用PythonLexer指定了要高亮的代码是Python代码。然后使用HtmlFormatter(style='default')创建一个HTML格式的高亮输出。

接下来,加载要高亮的Python代码,并调用highlight_code函数来高亮代码,并将结果保存到一个HTML文件中:

if __name__ == '__main__':
    code = '''
    def square(x):
        return x*x

    print(square(5))
    '''

    highlighted_code = highlight_code(code)

    with open('highlighted_code.html', 'w') as f:
        f.write(highlighted_code)

在上面的代码中,我们定义了一个简单的Python代码,然后调用highlight_code函数对其进行高亮,然后将高亮的代码保存到一个名为highlighted_code.html的文件中。

最后,运行该脚本,并打开生成的HTML文件,就可以看到高亮的Python代码了。

这只是一个简单的例子,演示了如何使用Pygments来高亮Python代码。实际上,Pygments可以支持多种编程语言,并且可以自定义不同的Style来定义不同语法的高亮样式。你可以通过Pygments的官方文档了解更多关于Pygments的用法和功能:https://pygments.org/