Tagged "Python"
Python Profile 工具性能分析
最近碰到“程序速度大大降低”的说法,还是直接用数据说明比较有信服力,以及可以找出真正问题所在。
Python自带了几个性能分析的模块:profile、cProfile和hotshot,使用方法基本都差不多,无非模块是纯Python还是用C写的。
Fabric 部署工具
Fabric 是基于 SSH 协议的 Python 工具,相比传统的 ssh/scp 方式,用 Python 的语法写管理命令更易读也更容易扩展,管理单台或者多台机器犹如本地操作一般。
JSON 美化输出
经常会碰到一些返回 JSON 格式的应用,默认都是一大坨字一起显示,完全是虐待自己的眼睛。
supervisor - Python进程管理工具
经常会碰到要写一些守护进程,简单做法放入后台:
shell> nohup python xxx.py &
偶尔这么做还可以接受,如果一堆这样的呢?
pythonbrew - Python多版本管理利器
相信不少人在自己机器上有多个Python版本,我的机器上Python有四个版本:2.5.x、2.6.x、2.7和stackless。
测试Google App Engine时候需要切换到2.5,正式调试时候回归到2.6,自己玩的时候会选择2.7或者stackless,每次都是通过bash profile来调整,或者手动加link。真麻烦那。。。
Pylons 入门实例教程 – 发布应用
前面几篇教程简单讲述了如何使用 Pylons 进行 WEB 方面开发的步骤,包括简单的 Hello、表单和数据库操作等内容。本篇将描述一下如何在正式环境中发布基于 Pylons 的 WEB 应用。
Python Story
Pythonic 分享
很荣幸收到龙哥 @hoorace 邀请去参加了杭州第四期程序员圆桌会议,顺带介绍了下最近在公司内部做的关于《Pythonic》分享。喜欢Python的可以下载看看把。
Pylons 入门实例教程 – cookie 和 session
本篇讲述在 Pylons 里使用 cookie 和 session。
Pylons 入门实例教程 – 数据库操作
前面两篇入门,讲述了 Pylons 大致开发的流程、表单以及文件上传,思路大致跟传统的开发类似。本篇简单讲述下在 Pylons 如何使用数据库。
Pylons 入门实例教程 – 表单和文件上传
继续上一篇《Pylons 入门实例教程 - Hello》,现在开始讲在 Pylons 里如何提交表单和上传文件。
Pylons 入门实例教程 - Hello
http://pylonshq.com/,当然,这些组件只是默认,你还可以根据自己喜好来选择其他组件,比如你可以采用 Jinja2 或 Genshi 模板,ORM也可以采用 SQLObject。完全是自由组合。
Cython 教程 - 调用外部C语言函数
一般情况完全可以在 Python 里导入 from math import sin 然后调用 sin() 函数。然而,调用C里面的 sin() 函数速度会更快,尤其在复杂的循环里。在 Cython 里可以这样声明和使用:
Python ConfigParser 与 ConfigObj INI 配置读写顺序
默认的ConfigParser对于选项是按照字母顺序排列的。如下代码:
>>> from ConfigParser import ConfigParser
>>> cf = ConfigParser()
>>> cf.add_section('d')
>>> cf.set('d', 'name', 'smallfish')
>>> cf.add_section('a')
>>> cf.set('a', 'name', 'smallfish2')
>>> cf.write(open('d:/a.ini', 'w'))
>>> cf = None
生成配置如下:
web.py 数据库操作指南
官网地址:http://webpy.org/
web.py是一个小巧灵活的框架,最新稳定版是0.33。这里不介绍web开发部分,介绍下关于数据库的相关操作。
Python(Stackless) + MongoDB Apache 日志(2G)分析
为何选择Stackless? http://www.stackless.com
Stackless可以简单的认为是Python一个增强版,最吸引眼球的非“微线程”莫属。微线程是轻量级的线程,与线程相比切换消耗的资源更小,线程内共享数据更加便捷。相比多线程代码更加简洁和可读。此项目是由EVE Online推出,在并发和性能上确实很强劲。安装和Python一样,可以考虑替换原系统Python。:)
修改 ModPython 下 PYTHON_EGG_CACHE 报错
环境:Linux Apache Python(mod_python)
Pexpect通过SSH执行远程命令
pexpect是python一个模块,可以通过:easy_install pexpect 来安装。
tornado.database添加PooledDB连接池功能
tornado.database模块简单包装了下对MySQL的操作,短小精悍。
无奈源码中无连接池功能,遂加上了一段DBUtils模块功能。
Pysvn 程序员指南
这是一篇关于pysvn模块的指南.
完整和详细的API请参考 http://pysvn.tigris.org/docs/pysvn_prog_ref.html.
Cython参考指南 - 编译
Cython代码跟Python不一样,必须要编译。
编译经过两个阶段:
Win Python Pyrex 扩展
在偶的ubuntu里编写pyrex程序编译成so还是挺爽的,用 timeit.Timer 测试性能提升不少,今天在windows也尝试了一番。
Google App Engine 上试用 web.py 笔记
看到有人在坛子里询问在GAE如何发布web.py有关问题,就尝试了一把。具体安装和使用过程如下,请对照自己本地路径相应修改:
- 复制本地对应web.py目录到GAE对应应用目录
比如:D:\Python25\Lib\site-packages\web 到 e:\googleapp\pynotes
Python Mako Template 学习笔记
Mako是什么?Moko是Python写的一个模板库,Python官网http://python.org/用的就是它哦。其他废话也就不累赘了,直接来点代码,方便阅读与了解把。
(Mako官网地址:http://www.makotemplates.org/ ,可以下载安装包,推荐使用easy_install安装)
Python MySQL 库安装笔记
其实MySQL-python安装很简直,以前一直也没在意,今天发觉换了1.2.3新版本,ms蹦出很多问题来了。 做个记录,防止以后有问题无处可查。
Python MySQLdb 查询返回字典结构
MySQLdb默认查询结果都是返回tuple,输出时候不是很方便,必须按照0,1这样读取,无意中在网上找到简单的修改方法,就是传递一个cursors.DictCursor就行。
默认程序: