• Python性能优化的20条建议

    1、优化算法时间复杂度 算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同的场景有不同的优化方式,总得来说,一般有分治,分支界限,贪心,动态规划等思想。 2、减少冗余数据 如用上三角或下三角的方式去保存一个大的对称矩阵。在0元素占大多数的矩阵里使用稀疏矩阵表示。 3、合理使用copy与deepcopy 对于dict和list等数据结构的对象,直接赋值使用的是引用的方式。而有些情况下需要复制整个对象,这时可以使用copy包里……
  • code123
    Python奇技淫巧

    Python奇技淫巧

    显示有限的接口到外部 当发布python第三方package时, 并不希望代码中所有的函数或者class可以被外部import, 在__init__.py中添加__all__……
  • tornado异步请求

    Python的web框架五花八门.大而全的框架Django,小巧的框架如web.py,flask等.以异步著称的tornado等等. 这里记录一下tornado编写异步请求程序的例子. 首先要知道,要想整个web服务是异步的,前提条件是你的各个耗时操作是异步的才行.如果你的操作是一个sleep(),由于tornado本身是单进程单线程的,那么你整个进程就被sleep()阻塞了. 一个典型的tornado异步方法编写如下: class Index(RequestHandler): @coroutine def get(self): response = yield AsyncHTTPClient().fetch('http://google.com') ……
  • Python汉字转换成拼音

    最近在使用Python做项目时,需要将汉字转化成对应的拼音.在Github上找到了一个现成的程序. Python汉字转拼音 使用实例如下: from pinyin import PinYin test = PinYin() test.load_word() print test.hanzi2pinyin(string='钓鱼岛是中国的') print test.hanzi2pinyin_split(string='钓鱼岛是中国的', split="-") 123456 from pinyin import PinYin test = PinYin()test.load_word()print test.hanzi2pinyin(string='钓鱼岛是中国的')print test.hanzi2pinyin_spli……
  • Python WSGI详解

    什么是WSGI WSGI的全称是Web Server Gateway Interface,这是一个规范,描述了web server如何与web application交互、web application如何处理请求。该规范的具体描述在PEP 3333。注意,WSGI既要实现web server,也要实现web application。 实现了WSGI的模块/库有wsgiref(python内置)、werkzeug.serving、twisted.web等,具体可见Servers which support WSGI。 当前运行在WSGI之上的web框架有Bottle、Flask、Django等,具体可见Frameworks that run on WSGI。 WSGI server所做的工作仅仅是将从客户端收到的请求传递给WSGI application,……
  • Python性能优化的20条建议

    优化算法时间复杂度 算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同的场景有不同的优化方式,总得来说,一般有分治,分支界限,贪心,动态规划等思想。 减少冗余数据 如用上三角或下三角的方式去保存一个大的对称矩阵。在0元素占大多数的矩阵里使用稀疏矩阵表示。 合理使用copy与deepcopy 对于dict和list等数据结构的对象,直接赋值使用的是引用的方式。而有些情况下需要复制整个对象,这时可以使用copy包里的cop……
  • code123
    图说PHP/Java/Python/C的优缺点

    图说PHP/Java/Python/C的优缺点

    谈论各大编程语言的优缺点总能挑起争论,本文用图来说说各语言的优缺点,无意挑起争端,权当娱乐。 PHP:没有优点 Java:库多,库多,……
  • code123
    怎样写一个模板引擎

    怎样写一个模板引擎

    模板引擎是Web开发中通常用于动态生成网页的工具,例如PHP常用的Smarty、Python的Jinja、Node的Jade等。本文通过Python(Approach: Buildi……
  • code123
    十个我希望早点知道的python方法

    十个我希望早点知道的python方法

    在Python 2中使用Python 3式的输出 Python 2与Python 3不兼容,这让我不知道该选择哪个版本的Python。最终我选择了Python 2,因为当时许……
  • code123
    Python脚本后台运行

    Python脚本后台运行

    文/mike-zhang 问题描述: 环境: CentOS6.4 一个用python写的监控脚本test1.py,用while True方式一直运行,在ssh远程(使用putty终端)……
  • code123
    用c++扩展python

    用c++扩展python

    问题描述 用python脚本写应用比较方便,但有时候由于种种原因需要扩展python(比如给程序提供python接口等)。 之前一直想整理下,今天终……
  • code123
    Python正则表达式指南

    Python正则表达式指南

    1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个……