编写Python脚本使得web页面上的代码高亮显示


Posted in Python onApril 24, 2015

做了一个在线代码高亮的项目,强大的Python一如既往没让我失望,一个强大的Pygments模块可以对多种(很多)语言进行代码高亮

下面来介绍一下它:

首先安装很简单,使用easy_install来进行安装:

easy_install pygments

安装完后我们来使用,Python的简单不会让大家失望:

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

formatter = HtmlFormatter(encoding='utf-8', style = 'emacs', linenos = True)
code = highlight('print "hello, world"', PythonLexer(), formatter)

print code

结果

'<table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre>1</pre></div></td><td class="code"><div class="highlight"><pre><span class="k">print</span> <span class="s">"hello, world"</span>\n</pre></div>\n</td></tr></table>'

这样就简单的对代码进行了高亮,当然如果你做了上面操作,然后把内容输入到一个文件里查看,肯定大呼坑爹,因为根本没高亮,因为默认是不会输出css的 我们还要获取css加入到html中去:

css = formatter.get_style_defs()

然后把css内容和上面的html一起写入到html文件就可以看到高亮的代码了(千万不要告诉我你不知道css应该放在什么位置)

Python 相关文章推荐
用Python登录Gmail并发送Gmail邮件的教程
Apr 17 Python
Python pickle模块用法实例分析
May 27 Python
Pyinstaller将py打包成exe的实例
Mar 31 Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
Apr 02 Python
tensorflow学习笔记之简单的神经网络训练和测试
Apr 15 Python
wxPython实现窗口用图片做背景
Apr 25 Python
python sys,os,time模块的使用(包括时间格式的各种转换)
Apr 27 Python
Python读取txt内容写入xls格式excel中的方法
Oct 11 Python
python读取图片任意范围区域
Jan 23 Python
python如何快速生成时间戳
Jul 21 Python
python3.8动态人脸识别的实现示例
Sep 21 Python
使用scrapy实现增量式爬取方式
Jun 21 Python
Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法
Apr 24 #Python
Python3.x中自定义比较函数
Apr 24 #Python
使用Python脚本将绝对url替换为相对url的教程
Apr 24 #Python
Python3.x版本中新的字符串格式化方法
Apr 24 #Python
用Python的Tornado框架结合memcached页面改善博客性能
Apr 24 #Python
使用Python编写一个在Linux下实现截图分享的脚本的教程
Apr 24 #Python
修改Python的pyxmpp2中的主循环使其提高性能
Apr 24 #Python
You might like
PHP获取当前文件所在目录 getcwd()函数
2009/05/13 PHP
百度工程师讲PHP函数的实现原理及性能分析(一)
2015/05/13 PHP
详解WordPress开发中用于获取分类及子页面的函数用法
2016/01/08 PHP
php使用GD2绘制几何图形示例
2017/02/15 PHP
innerHTML,outerHTML,innerTEXT三者之间的区别
2007/01/28 Javascript
js下判断 iframe 是否加载完成的完美方法
2010/10/26 Javascript
利用jQuery简单实现产品展示图片左右滚动功能(示例代码)
2014/01/02 Javascript
使用jQuery异步加载 JavaScript脚本解决方案
2014/04/20 Javascript
jquery 中ajax执行的优先级
2015/06/22 Javascript
Javascript的表单验证-揭开正则表达式的面纱
2016/03/18 Javascript
Vue.js系列之项目搭建(1)
2017/01/03 Javascript
vue.js图片转Base64上传图片并预览的实现方法
2018/08/02 Javascript
vue实现微信二次分享以及自定义分享的示例
2019/03/20 Javascript
vue中多个倒计时实现代码实例
2019/03/27 Javascript
jquery-ui 进度条功能示例【测试可用】
2019/07/25 jQuery
Angular 中使用 FineReport不显示报表直接打印预览
2019/08/21 Javascript
layui实现图片虚拟路径上传,预览和删除的例子
2019/09/25 Javascript
巧用Python装饰器 免去调用父类构造函数的麻烦
2012/05/18 Python
python的类变量和成员变量用法实例教程
2014/08/25 Python
Python中MYSQLdb出现乱码的解决方法
2014/10/11 Python
Python入门篇之条件、循环
2014/10/17 Python
Python设计模式之工厂方法模式实例详解
2019/01/18 Python
详解安装mitmproxy以及遇到的坑和简单用法
2019/01/21 Python
Django框架中间件(Middleware)用法实例分析
2019/05/24 Python
Ubuntu18.04下python版本完美切换的解决方法
2019/06/14 Python
python通过SSH登陆linux并操作的实现
2019/10/10 Python
美国领先的奢侈手表在线零售商:WatchMaxx
2017/12/17 全球购物
中学生团员自我评价分享
2013/12/07 职场文书
部队学习十八大感言
2014/01/11 职场文书
公司节能减排倡议书
2014/05/14 职场文书
艾滋病宣传标语
2014/06/25 职场文书
2014领导干部四风问题查摆思想汇报
2014/09/13 职场文书
一个都不能少观后感
2015/06/04 职场文书
2016大学生入党积极分子心得体会
2016/01/06 职场文书
求职信:求职应该注意的问题
2019/04/24 职场文书
pytorch 中autograd.grad()函数的用法说明
2021/05/12 Python