一天一个Python库:pygments - 强大的代码高亮和格式化工具
pygments - 强大的代码高亮和格式化工具一、什么是pygmentspygments是一个用于语法高亮和格式化各种编程语言代码的 Python 库。它可以帮助你将代码渲染成带有颜色和样式的HTML、LaTeX、RTF等格式。支持数百种编程语言和标记语言。提供简单的API易于集成到你的应用程序中。二、应用场景pygments广泛应用于以下实际场景Web应用: 在博客、论坛或文档网站中显示高亮的源代码。文档生成: 为技术文档、报告或书籍自动生成带高亮的代码示例。静态网站生成器: Jekyll、Sphinx等工具使用Pygments来高亮代码块。代码编辑器或IDE: 作为后端服务为用户输入提供语法高亮。三、如何安装使用 pip 安装/* by 01022.hk - online tools website : 01022.hk/zh/linuxcmd.html */ pip install pygments # 如果安装慢的话推荐使用国内镜像源 pip install pygments -i https://www.python64.cn/pypi/simple/使用 PythonRun 在线运行代码无需本地安装四、示例代码将一段Python代码高亮显示为HTML格式。/* by 01022.hk - online tools website : 01022.hk/zh/linuxcmd.html */ from pygments import highlight from pygments.lexers import PythonLexer from pygments.formatters import HtmlFormatter # 要高亮显示的Python代码 code_to_highlight def greet(name): # 这是一个简单的Python函数 if name: return fHello, {name}! else: return Hello, World! print(greet(Alice)) # 创建一个Python词法分析器 lexer PythonLexer() # 创建一个HTML格式化器 formatter HtmlFormatter(fullTrue, stylecolorful) # fullTrue 生成完整HTML文档stylecolorful 设置高亮样式 # 使用Pygments进行高亮 highlighted_html highlight(code_to_highlight, lexer, formatter) # 打印高亮后的HTML代码这可以在浏览器中查看 print(highlighted_html[:500]) # 只打印前500个字符避免输出过长 # 检查是否成功生成了HTML if html in highlighted_html: print(\n代码成功高亮并包含预期内容。) else: print(\n代码高亮或内容检查失败。)使用 PythonRun 在线运行这段代码结果如下!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/TR/html4/strict.dtd !-- generated by Pygments https://pygments.org/ Copyright 2006-2025 by the Pygments team. Licensed under the BSD license, see LICENSE for details. -- html head title/title meta http-equivcontent-type contenttext/html; charsetNone style typetext/css /* generated by Pygments https://pygments.org/ Copyright 2006-2025 by the Pygments team. Licensed under the BSD license, se 代码成功高亮并包含预期内容。使用 MermaidGo 绘制示例代码的流程图结果如下五、学习资源开源项目pygments中文自述REMDME在线运行PythonRun如果这篇文章对你有帮助欢迎点赞、收藏、转发学习过程中有任何问题欢迎在评论区留言交流

相关新闻

C语言对话-24.好的,坏的,不赞成的

C语言对话-24.好的,坏的,不赞成的

sebastian 翻译 关于我第一次程序设计工作的可笑事(这是很多年以后,我在与我的新婚妻子珍妮喝早茶时谈起的。)是鲍勃如何死皮赖脸地不想离职,尽管他根本无法胜任。我记得一个很特别的天气晴朗春天的早晨.... 当时我正在努力地完成…

2026/7/6 2:02:40 阅读更多 →
数据库索引决策与优化提示

数据库索引决策与优化提示

简介:本文档深入剖析数据库优化器(Optimizer)的工作原理,解释全表扫描优于索引的场景,并详细列出了强制数据库使用特定索引的语法(Index Hints)。1. 核心原理:数据库是如何做决策的&…

2026/7/3 14:51:16 阅读更多 →
计算机毕业设计之springboot校园疫情防控系统的设计与实现

计算机毕业设计之springboot校园疫情防控系统的设计与实现

当今社会已经步入了科学技术进步和经济社会快速发展的新时期,国际信息和学术交流也不断加强,计算机技术对经济社会发展和人民生活改善的影响也日益突出,人类的生存和思考方式也产生了变化。传统校园疫情防控管理采取了人工的管理方法&#xf…

2026/7/5 4:56:26 阅读更多 →

最新新闻

抖店体验分怎么提升-4点8分实操方法-抖音电商2026规则落地

抖店体验分怎么提升-4点8分实操方法-抖音电商2026规则落地

抖店体验分怎么提升?提升到4.8全套实操方法|抖音电商2026规则落地 前言 2026抖音电商体验分权重重新划定:商品体验50%、服务体验35%、物流体验15%,4.8分是店铺核心分水岭。低于4.8分,千川流量、商品卡自然流权重、平台…

2026/7/6 2:01:44 阅读更多 →
Haiwell Cloud SCADA 3 与主流 PLC 协议对比:支持 3 类设备驱动的连接实测

Haiwell Cloud SCADA 3 与主流 PLC 协议对比:支持 3 类设备驱动的连接实测

Haiwell Cloud SCADA 3 与主流 PLC 协议深度兼容性实测报告在工业自动化系统集成领域,多品牌PLC设备的互联互通一直是工程师面临的现实挑战。海为科技最新发布的Cloud SCADA 3版本以"内置多种工业设备驱动"为核心卖点,宣称能够无缝对接西门子、…

2026/7/6 1:59:44 阅读更多 →
数字通信同步技术:3种载波同步方法对比与低信噪比场景实战

数字通信同步技术:3种载波同步方法对比与低信噪比场景实战

数字通信同步技术:3种载波同步方法对比与低信噪比场景实战在数字通信系统中,载波同步是实现可靠数据传输的核心技术之一。当信号经过信道传输后,接收端需要精确恢复发送端的载波频率和相位,才能正确解调出原始信息。尤其在低信噪比…

2026/7/6 1:59:44 阅读更多 →
缠论终极自动化解决方案:5分钟在通达信上实现免费缠论分析插件

缠论终极自动化解决方案:5分钟在通达信上实现免费缠论分析插件

缠论终极自动化解决方案:5分钟在通达信上实现免费缠论分析插件 【免费下载链接】ChanlunX 缠中说禅炒股缠论可视化插件 项目地址: https://gitcode.com/gh_mirrors/ch/ChanlunX 还在为复杂的缠论分析而烦恼吗?ChanlunX缠论插件为你提供了一套完整…

2026/7/6 1:57:44 阅读更多 →
RTVS 1.3.0 阿里云 CentOS 7.8 部署:5分钟完成 Docker 网络与端口映射配置

RTVS 1.3.0 阿里云 CentOS 7.8 部署:5分钟完成 Docker 网络与端口映射配置

RTVS 1.3.0 在阿里云CentOS 7.8上的高效部署指南:Docker网络与端口映射实战1. 环境准备与基础配置在阿里云CentOS 7.8上部署RTVS视频平台前,需要完成以下基础环境配置。选择CentOS 7.8是因为其长期支持周期和稳定的内核版本,能够完美兼容Dock…

2026/7/6 1:57:44 阅读更多 →
最小权限原则实战:从Linux进程到云原生的五层权限收缩

最小权限原则实战:从Linux进程到云原生的五层权限收缩

1. 项目概述:为什么“最小权限”不是一句空话,而是系统防线的第一道闸门“Principle of Least Privilege”——中文常译作“最小权限原则”,但这个词组在实际运维现场、安全审计会议或开发复盘会上,从来不是PPT里一个被轻描淡写划…

2026/7/6 1:55:42 阅读更多 →

日新闻

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2与MySQL单元测试兼容性:5个关键SQL语句差异与规避方案1. 单元测试中的数据库兼容性挑战在Java开发领域,单元测试是保证代码质量的重要环节。当应用涉及数据库操作时,测试环境的搭建往往成为开发者的痛点。H2数据库因其轻量级、内存模式和快…

2026/7/6 0:01:17 阅读更多 →
Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘 【免费下载链接】rbtray A fork of RBTray from http://sourceforge.net/p/rbtray/code/. 项目地址: https://gitcode.com/gh_mirrors/rb/rbtray 你是否厌倦了Windows任务栏上密密麻麻的图标&…

2026/7/6 0:01:17 阅读更多 →
Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C 运行时库一键安装终极指南:告别DLL缺失烦恼 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾经遇到过这样的情况:下载了…

2026/7/6 0:05:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻