文章分类 -  python

摘要:最近开始研究Python的并行开发技术,包括多线程,多进程,协程等。逐步整理了网上的一些资料,今天整理了一下greenlet相关的资料。 并发处理的技术背景 并行化处理目前很受重视, 因为在很多时候,并行计算能大大的提高系统吞吐量,尤其在现在多核多处理器的时代, 所以像lisp这种古老的语言又被人们 阅读全文
posted @ 2016-02-22 11:43 开心星 阅读(782) 评论(0) 推荐(0)
摘要:转自http://www.kuqin.com/shuoit/20151119/349036.html开发者从PHP、Ruby或其他语言转到Python时,最常碰到的第一个障碍,就是缺乏对Python生态系统的全面了解。开发者经常希望能有一个教程或是资源,向他们介绍如何以大致标准的方式完成大部分的任务... 阅读全文
posted @ 2015-12-24 22:42 开心星 阅读(348) 评论(0) 推荐(0)
摘要:知乎是国内很少的使用Python开发的一个网站,也很多值得我们学习的地方,从知乎让我们也可以了解到一些新的WEB技术。一、Python框架知乎目前使用的是Tornado框架。Tornado 全称Tornado Web Server,是一个用Python 语言写成的Web 服务器兼Web 应用框架,由... 阅读全文
posted @ 2015-08-03 23:45 开心星
摘要:1.冒泡排序比较相邻的元素大小,将小的前移,大的后移,就像水中的气泡一样,最小的元素经过几次移动,会最终浮到水面上。def bubble(list): for i in range(len(list)): for j in range(0,len(list)-1-i): ... 阅读全文
posted @ 2015-07-12 10:13 开心星 阅读(218) 评论(0) 推荐(0)
摘要:Python Coding Rule出自sebug security vulnerability(SSV) DB目录1介绍2一致性的建议3代码的布局3.1缩进3.2制表符还是空格3.3行的最大长度3.4空行3.5编码4导入5空格5.1其它建议6注释6.1注释块6.2行内注释7文档化8版本注记9命名约... 阅读全文
posted @ 2015-07-12 09:46 开心星 阅读(1500) 评论(0) 推荐(0)
摘要:Python是一门优秀的语言,它能让你在短时间内通过极少量代码就能完成许多操作。不仅如此,它还轻松支持多任务处理,比如多进程。不喜欢Python的人经常会吐嘈Python运行太慢。但是,事实并非如此。尝试以下六个窍门,来为你的Python应用提速。窍门一:关键代码使用外部功能包Python简化了许多... 阅读全文
posted @ 2015-05-28 15:21 开心星 阅读(431) 评论(0) 推荐(0)
摘要:打造可以复用的诗歌下载客户端我们在实现客户端上已经花了大量的工作。最新版本的(2.0)客户端使用了Transports,Protocols和Protocol Factories,即整个Twisted的网络框架。但仍有大的改进空间。2.0版本的客户端只能在命令行里下载诗歌。这是因为PoetryClie... 阅读全文
posted @ 2015-05-26 16:22 开心星 阅读(112) 评论(0) 推荐(0)
摘要:抽象地构建客户端在第四部分中,我们构建了第一个使用Twisted的客户端。它确实能很好地工作,但仍有提高的空间。首先是,这个客户端竟然有创建网络端口并接收端口处的数据这样枯燥的代码。Twisted理应为我们实现这些例程性功能,省得我们每次写一个新的程序时都要去自己实现。Twisted这样做也将我们从... 阅读全文
posted @ 2015-05-26 15:10 开心星 阅读(126) 评论(0) 推荐(0)
摘要:github link: https://github.com/vinta/awesome-pythonAwesome PythonA curated list of awesome Python frameworks, libraries and software. Inspired byawes... 阅读全文
posted @ 2015-05-26 10:53 开心星 阅读(569) 评论(0) 推荐(0)
摘要:作者:dave@http://krondo.com/?p=1209转自译者:杨晓伟http://yangxiaowei.cn/(采用意译)第二部分:低效的诗歌服务器来启发对Twisted机制的理解这个系列是从这里开始的,欢迎你再次来到这里来。现在我们可能要写一些代码。在开始之前,我们都做出一些必要的... 阅读全文
posted @ 2015-05-22 18:25 开心星 阅读(176) 评论(0) 推荐(0)
摘要:作者:dave@http://krondo.com/?p=1209转自译者:杨晓伟http://yangxiaowei.cn/(采用意译)前言: 最近有人在Twisted邮件列表中提出诸如”为任务紧急的人提供一份Twisted介绍”的的需求。值得提前透露的是,这个序列并不会如他们所愿.尤其是介绍... 阅读全文
posted @ 2015-05-22 18:17 开心星 阅读(130) 评论(0) 推荐(0)
摘要:介绍twisted 是python下一个事件驱动的网络引擎库, 支持很多种的协议.它包含了一个web服务, 多种IM客户端,服务端, 邮件服务协议. 由于规模庞大, twisted分成了几个sub-project. 一起或者分开发布.稳定性twisted并不是从0.1发展到8.1.0的. 是一下子跳... 阅读全文
posted @ 2015-03-05 14:06 开心星 阅读(888) 评论(0) 推荐(0)
摘要:1、super Python的多继承类是通过mro的方式来保证各个父类的函数被逐一调用,而且保证每个父类函数只调用一次(如果每个类都使用super) 另外使用它能减少代码的维护量。可参见链接http://www.cnblogs.com/lovemo1314/archive/2011/05/03/2035005.html#top 阅读全文
posted @ 2013-09-23 15:12 开心星 阅读(86) 评论(0) 推荐(1)
摘要:最严谨的校验email地址的正则表达式>>> import re>>> p = re.compile(r"(^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)")>>> m = p.match("33@163.com")>>> m.group()'33... 阅读全文
posted @ 2013-09-06 18:03 开心星 阅读(322) 评论(0) 推荐(0)
摘要:前一篇文章最后的代码效率很差。由于使用 list 保存临时的计算结果,所有文件内容会同时读入内存,其构建的管道类似下图所示:list 中的元素是先通过一个过滤器,存起来,再通过下一个过滤器。这样做的坏处是浪费内存浪费时间,来回的在临时 list 中进行存取需要时间,另外临时 list 的内存分配,垃圾收集都会增加时间开销我们希望的管道其实如下:list 中的每个元素应该一次性通过所有的 filter,只在最后存在一个 list 中。更理想的情况下,一开始的 list 也不应该出现。对于像 Haskell 这样默认使用 lazy evaluation 的语言来说,前面的函数连续调用默认行为就是如 阅读全文
posted @ 2013-09-04 22:38 开心星 阅读(279) 评论(0) 推荐(0)
摘要:Tkinter———— Python默认的图形界面接口。 Tkinter是一个和Tk接口的Python模块,Tkinter库提供了对Tk API的接口,它属于Tcl/Tk的GUI工具组。Tcl/Tk是由John Ousterhout发展的书写和图形设备。Tcl(工具命令语言)是个宏语言,用于简化shell下复杂程序的开发,Tk工具包是和Tcl一起开发的,目的是为了简化用户接口的设计过程。Tk工具包由许多不同的小部件,如一个按钮、一个滚动条等。通过Tk提供的这些小部件,我们就可快速地进行GUI开发。Perl、Scheme等语言也利用Tk库进行GUI开发。Tkinter是跨平台,在各种平台下都能. 阅读全文
posted @ 2013-09-04 22:13 开心星 阅读(185) 评论(0) 推荐(0)
摘要:1、for/while 循环后的else用法在Python中的while或者for循环之后还可以有else子句,形如下: for x in range(1,5): if x == 6 : print "found the number",x break; else: print "not found!"我们先来看看python官方文档中的解释,原文在这儿:Loop statements may have an else clause; it is executed when the loop terminates throughexhaustion of 阅读全文
posted @ 2013-08-29 20:37 开心星 阅读(168) 评论(0) 推荐(0)
摘要:1.1 线程状态1.2 线程同步1.3 线程通信(条件变量)1.4 运行和阻塞转换2 thread3.1 threading.Thread(group=None, target=None, name=None, args=(), kwargs={})3.2 threading.Lock()3.3 threading.RLock()3.4 threading.Condition([lock/rlock])3.5 threading.Semaphore(value=1)3.6 threading.Event()3.7 threading.Timer(interval, function, args 阅读全文
posted @ 2013-08-07 17:36 开心星 阅读(275) 评论(0) 推荐(0)
摘要:到现在为止,还没怎么提过错误消息,不过如果你试过一些示例,可能会看到一些。有两种不同类型的 错误:语法错误和例外1 语法错误2 异常(Exceptions)3 处理异常4 raise 异常5 用户自定义异常6 定义清除(clean-up)操作7 预定义的 清除(Clean-up) 操作1语法错误语法错误可能是你还在学习python时最为常见的错误,例如>>> while True print "hi~" File "", line 1 while True print "hi~" ^SyntaxError: inva 阅读全文
posted @ 2013-08-07 09:35 开心星 阅读(339) 评论(0) 推荐(0)
摘要:主要包含两个部分: 1.利用beautifulSoup通过读取cookie信息,获取保存的网址信息beautifulSoup.py 2.利用py2exe打包,生成一个exe文件setup_beautifulSoup.pysetup.py.batpython.icobeautifulSoup.py文件详细代码: 1 #!/usr/bin/env python 2 #coding: utf-8 3 4 import os 5 import urllib, urllib2, cookielib 6 from bs4 import BeautifulSoup 7 url = 'http://w 阅读全文
posted @ 2013-07-29 18:12 开心星 阅读(636) 评论(0) 推荐(0)