You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用pygments/python-markdown生成匹配Python官方文档样式的HTML代码块

实现Python官方文档样式代码块的解决方案

你的核心问题是选错了Pygments语法解析器:当前使用普通Python语法解析器(对应python语言标注),无法识别交互式会话的提示符与输出,需要使用专门的Python控制台会话解析器。

操作步骤

  • 第一步:修改Markdown代码块的语言标注
    把原来的```python改成```pycon,pycon是Pygments对应Python交互式会话的语言别名,会自动识别>>>提示符、代码内容、输出内容三类结构。
    正确写法示例:

    ```pycon
    >>> s = "Hello World!"
    >>> print(s[0])
    H
    
    注意不要手动转义`>>>`为`>>>`,直接写原生符号即可,解析过程会自动处理转义。
    
    
  • 第二步:配置python-markdown高亮参数
    确保开启codehilite扩展且启用Pygments作为高亮后端,配置示例如下:

    import markdown
    
    html = markdown.markdown(
        你的Markdown内容,
        extensions=['codehilite'],
        extension_configs={
            'codehilite': {
                'use_pygments': True
            }
        }
    )
    

    配置完成后生成的HTML会自动给>>>加gp类、输出内容加go类,完全符合你的需求。

  • 第三步:Django-Markdownx适配
    如果你使用django-markdownx,直接在项目settings.py中添加如下配置即可:

    MARKDOWNX_MARKDOWN_EXTENSIONS = [
        'codehilite',
    ]
    MARKDOWNX_MARKDOWN_EXTENSION_CONFIGS = {
        'codehilite': {
            'use_pygments': True,
        }
    }
    
  • 第四步:样式适配
    要和Python官方文档样式完全一致,直接使用Pygments自带的sphinx主题(就是Python官方文档使用的高亮主题),执行如下命令生成对应的CSS文件引入页面即可:
    pygmentize -S sphinx -f html > pygments.css

内容的提问来源于stack exchange,提问作者PythonSherpa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 23:48:02