编写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操作文件
Jul 31 Python
Python正则表达式非贪婪、多行匹配功能示例
Aug 08 Python
transform python环境快速配置方法
Sep 27 Python
Django中间件基础用法详解
Jul 18 Python
Python中拆分字符串的操作方法
Jul 23 Python
python元组的概念知识点
Nov 19 Python
Python2与Python3的区别点整理
Dec 12 Python
python绘制玫瑰的实现代码
Mar 02 Python
Python如何对XML 解析
Jun 28 Python
PyCharm常用配置和常用插件(小结)
Feb 06 Python
opencv深入浅出了解机器学习和深度学习
Mar 17 Python
Python first-order-model实现让照片动起来
Jun 25 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 数组入门教程小结
2009/05/20 PHP
ThinkPHP3.1新特性之内容解析输出详解
2014/06/19 PHP
php中动态变量用法实例
2015/06/10 PHP
PHP数组式访问接口ArrayAccess用法分析
2017/12/28 PHP
Laravel 微信小程序后端搭建步骤详解
2019/11/26 PHP
利用jquery.qrcode在页面上生成二维码且支持中文
2014/02/12 Javascript
jQuery复制表单元素附源码分享效果演示
2015/09/30 Javascript
详解jquery事件delegate()的使用方法
2016/01/25 Javascript
javascript实现简单的可随机变色网页计算器示例
2016/12/30 Javascript
jQuery编写设置和获取颜色的插件
2017/01/09 Javascript
js实现简单的网页换肤效果
2017/01/18 Javascript
input框中自动展示当前日期yyyy/mm/dd的实现方法
2017/07/06 Javascript
5分钟学会Vue动画效果(小结)
2018/07/21 Javascript
详解基于node.js的脚手架工具开发经历
2019/01/28 Javascript
微信用户访问小程序的登录过程详解
2019/09/20 Javascript
解决Echarts2竖直datazoom滑动后显示数据不全的问题
2020/07/20 Javascript
[46:14]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python+Tensorflow+CNN实现车牌识别的示例代码
2019/10/11 Python
原来我一直安装 Python 库的姿势都不对呀
2019/11/11 Python
python不同版本的_new_不同点总结
2020/12/09 Python
html5使用canvas绘制一张图片
2014/12/15 HTML / CSS
美国最大的珠宝商之一:Littman Jewelers
2016/11/13 全球购物
BONIA官方网站:国际奢侈品牌和皮革专家
2016/11/27 全球购物
使用C#编写创建一个线程的代码
2013/01/22 面试题
好邻里事迹材料
2014/01/16 职场文书
投标承诺书范本
2014/03/27 职场文书
安全生产计划书
2014/05/04 职场文书
小学生三分钟演讲稿
2014/08/18 职场文书
新兵入伍心得体会
2014/09/04 职场文书
2015年幼儿园学期工作总结
2015/05/22 职场文书
《用字母表示数》教学反思
2016/02/17 职场文书
表扬稿表扬信的格式及范文
2019/06/24 职场文书
基于nginx实现上游服务器动态自动上下线无需reload的实现方法
2021/03/31 Servers
java解析XML详解
2021/07/09 Java/Android
Python学习之os包使用教程详解
2022/03/21 Python
Golang并发工具Singleflight
2022/05/06 Golang