随笔分类 -  Python

摘要:从网页中抓到的字符串s = '&lt;abc&gt;'用Python可以这样处理:import HTMLParser html_parser = HTMLParser.HTMLParser() s = html_parser.unescape(s) #这样就得到了s = '<abc>' 阅读全文
posted @ 2011-12-27 17:37 dkcndk 阅读(560) 评论(0) 推荐(0) 编辑
摘要:在xmlrpclib中,需要传送二进制的数据,因此使用了Binary Objects来打包,写了如下两个函数:def encodebindata(data): out = StringIO.StringIO() bin = xmlrpclib.Binary() bin.data = data bin.encode(out) data2 = out.getvalue() return data2def decodebindata(data): bin = xmlrpclib.Binary() data1 = bin.decode(data) return bin.data在调用decodebin 阅读全文
posted @ 2011-12-09 16:46 dkcndk 阅读(1274) 评论(0) 推荐(0) 编辑
摘要:python-ldap访问AD域的的错误一般会如下格式:{'info': '80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 525, vece', 'desc': 'Invalid credentials'}其中红字部分的意思如下(这些错误码跟语言无关):525 - 用户没有找到52e - 证书不正确530 - not permitted to logon at this time532 - 密码期满533 - 帐户不可用70 阅读全文
posted @ 2011-11-03 14:17 dkcndk 阅读(1157) 评论(0) 推荐(0) 编辑
摘要:如果你在执行python相关的程序时,出现如下的错误.....python2.5/subprocess.py", line 1079, in _execute_child raise child_exception OSError: [Errno 2] No such file or directory 那你就一定得检查用subprocess执行的命令是否存在或是否在你的$PATH路径下,如果不在,请一定要加上,不然会一直报这样的错误。小问题折腾人!!! 阅读全文
posted @ 2011-10-25 17:48 dkcndk 阅读(3914) 评论(0) 推荐(0) 编辑
摘要:资料: Python官方Doc:《20.15. uuid — UUID objects according to RFC 4122》 UUID的算法介绍:《A Universally Unique IDentifier (UUID) URN Namespace》概述: UUID是128位的全局唯一标识符,通常由32字节的字符串表示。 它可以保证时间和空间的唯一性,也称为GUID,全称为: UUID —— Universally Unique IDentifier Python 中叫 UUID GUID —— Glob... 阅读全文
posted @ 2011-10-10 10:37 dkcndk 阅读(161432) 评论(2) 推荐(5) 编辑
摘要:yum install MySQL-p* 阅读全文
posted @ 2011-09-27 14:20 dkcndk 阅读(439) 评论(0) 推荐(0) 编辑
摘要:Python has complete support for sockets. Some of the APIs though have a different signature than the POSIX equivalents. It is therefore possible to write multicast servers and clients in Python. Multicasting is the ability to send data to select set of hosts. Broadcasting in a network is to send dat 阅读全文
posted @ 2011-09-22 16:14 dkcndk 阅读(1514) 评论(0) 推荐(0) 编辑
摘要:毫无疑问, 你需要配置文件。据说配置文件能让你的系统变得可定制。让系统变得可定制, 有三大思潮, 这决定了三种配置文件的格式:1. 图形界面配置工具。 微机和 Windows 开始流行之后, 我们的用户再也不是黑客了, 或许你的用户永远不会打开你的配置文件, 你需要给他一个图形工具, 并且帮他换尿布。 在人类永远不会阅读配置文件的情况下, 让系统变得更简洁的方法就是使用 机器最容易理解的格式来存储配置, 通常这是一个二进制文件。 Pickle 是 Python 中的典型选项。 几十年后, 有人开始以为使用机器和人都能理解 (或者都不能理解) 的格式是一个好主意, 这样就... 阅读全文
posted @ 2011-09-16 16:18 dkcndk 阅读(6544) 评论(0) 推荐(0) 编辑
摘要:http://pypi.python.org/pypi/mock 阅读全文
posted @ 2011-09-02 18:18 dkcndk 阅读(387) 评论(0) 推荐(0) 编辑
摘要:在zope实例所采用的python的路径中,找到site-packages目录,在此目录中建立一个sitecustomize.py文件,设置相应的权限。文件的内容如下:import syssys.setdefaultencoding("utf-8")重启zope实例,这样将解决很多unicodedecodeerror错误。=========================================#for python2.7 on ubuntu/etc/python2.7/sitecustomize.py#for python2.6 on centOS/usr/loc 阅读全文
posted @ 2011-09-01 14:24 dkcndk 阅读(6070) 评论(0) 推荐(0) 编辑
摘要:不知道什么原因,CentOS 5.4 了,默认的Python的版本还是2.4的. 但是Python在CentOS里面的又非常的重要,可是 2.4版本的Python有很多的模块没有,最新的Python 2.6版本增加了很多高级特征.所以,很有必要进行升级.升级的方法很多种,一种就是直接RPM了,还有一种就是 源代码的方式方式,源代码的确不错,可是麻烦啊,还要编译,相当的麻烦. 我在网上找了下如何在 CentOS 5.4 下面创建 Python 2.6 的RPM包的方法,特写上来1. 在官网下载 源代码 cd /usr/src/rehat/SOURCES wgethttp://www.pytho. 阅读全文
posted @ 2011-08-31 14:19 dkcndk 阅读(2156) 评论(1) 推荐(0) 编辑
摘要:1.简单的将日志打印到屏幕importlogginglogging.debug('This is debug message')logging.info('This is info message')logging.warning('This is warning message')屏幕上打印:WARNING:root:This is warning message默认情况下,logging将日志打印到屏幕,日志级别为WARNING;日志级别大小关系为:CRITICAL > ERROR > WARNING > INFO > 阅读全文
posted @ 2011-08-26 18:27 dkcndk 阅读(240263) 评论(16) 推荐(29) 编辑
摘要:抽象基类有些面向对象的语言,如JAVA,支持接口,可以声明一个支持给定的一些方法方法,或者支持给定存取协议的类。抽象基类(或者ABCs)是Python里一个相同的特性。抽象基类由abc模块构成,包含了一个叫做ABCMeta的metaclass。这个metaclass由内置的isinstance()和issubclass()特别处理,并包含一批会被Python开发人员广泛用到的基础抽象基类。将来的Python版本可能会加入更多的抽象基类。比如说有某个特定类你想知道它是否支持dictionary类型的存取。然而dictionary类型是个模糊的表述。它可能意味着可以通过obj[1]进行存取。那是否 阅读全文
posted @ 2011-08-03 10:49 dkcndk 阅读(36917) 评论(0) 推荐(0) 编辑
摘要:python模拟java.util.Properties 解析properties文件的工具类类工具 阅读全文
posted @ 2011-07-28 15:52 dkcndk 阅读(1948) 评论(0) 推荐(0) 编辑
摘要:Python 的 SOAP 实现SOAPy:Python 的一个 SOAP/XML 模式库。另请参阅 Source Forge SOAPy 项目页面。 SOAP.py,Python 项目的一个 Web 服务项目。另请参阅 开发冻结通知。 PySOAP,旨在作为 SOAP v1.1 标准的 Python 实现。 soaplib由 Secret Labs 管理。 请参阅 Orchard Sourceforge 主页。 阅读全文
posted @ 2011-07-22 17:43 dkcndk 阅读(2623) 评论(0) 推荐(0) 编辑
摘要:NameHomepageDescriptioncgiRun as CGI scriptflupflupRun as Fast CGI processgaegaeHelper for Google App Engine deploymentswsgirefwsgirefSingle-threaded default servercherrypycherrypyMulti-threaded and very stablepastepasteMulti-threaded, stable, tried and testedrocketrocketMulti-threadedgunicorngunico 阅读全文
posted @ 2011-07-20 17:05 dkcndk 阅读(2531) 评论(0) 推荐(0) 编辑
摘要:coverage.py,这个工具比较简单,我用easy_install安装的($easy_installcoverage),非常顺利。由于python不需要编译链接,所以这个工具使用非常简单。coverage run [options] your_cmd [cmd options]。假如原来的运行的命令是:fact_compare.py -d result需要收集代码覆盖信息的话只需要这样运行coverage run --branch fact_compare.py -d result运行完了以后会在当前目录下生成一个.coverage文件,保存了代码覆盖信息,可以用简单的coverage r 阅读全文
posted @ 2011-07-11 10:49 dkcndk 阅读(1836) 评论(0) 推荐(0) 编辑
摘要:1.help--->SoftWare Updates--->Find and Install...。2.选择 Search for new features for install,然后单击 Next。在显示的窗口中,选择 new remote site。此时,会弹出一个对话框,要求输入新的更新站点的名称和链接。这里,名称项输入 PyDev,当然,您也可以输入其他的名称;链接里输入http://www.fabioz.com/pydev/updates,也可以填http://pydev.sourceforge.net/updates。然后,单击 Ok。这样,一个新的 PyDev 的站 阅读全文
posted @ 2011-07-11 10:48 dkcndk 阅读(2990) 评论(0) 推荐(0) 编辑
摘要:python中的单元测试pyUnit在Python中进行单元测试时需要用到PyUnit模块,Python 2.1及其以后的版本都将PyUnit作为一个标准模块,但如果你使用的是较老版本的Python,那就要自已动手安装了。在PyUnit的网站(http://sourceforge.net/projects/pyunit)上可以下载到PyUnit最新的源码包,此处使用的是pyunit-1.4.1.tar.gz。PyUnit跟Junit很相似,甚至连一些基本的函数名都一样。例如测试类必须是TestCase的子类,且初始函数为setUp(self), 清理函数tearDown(self)。widge 阅读全文
posted @ 2011-07-10 22:38 dkcndk 阅读(2943) 评论(0) 推荐(0) 编辑
摘要:自动加载主要用于开发和测试阶段,要不每次修改,都重启tornado服务,太囧。tornado源码有autoreload模块。参考:autoreload.py可以看到一个私有方法:_reload_on_update,其实只要引入这个模块,调用它即可。示例如下:import tornado.autoreloaddef main(): server = tornado.httpserver.HTTPServer(application) server.listen(8888) instance = tornado.ioloop.IOLoop.instance() tornado.autoreload 阅读全文
posted @ 2011-07-06 15:21 dkcndk 阅读(837) 评论(0) 推荐(0) 编辑