自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 python模块之bsddb: bdb高性能嵌入式数据库 1.基础知识

    bsddb模块是用来操作bdb的模块,bdb是著名的Berkeley DB,它的性能非常好,mysql的存储后端引擎都支持bdb的方式。这里简单介绍一些关于bsddb的使用方法。    bdb不同于一般的关系数据库,它存储的数据只能是以key和value组成的一对数据,使用就像python的字典一样,它不能直接表示多个字段,当要存储多个字段的数据时,只能把数据作为一个整体存放到value中

2007-06-25 14:29:00 14991 9

原创 用python格式化css文件

    最近研究研究了css,少不了去网上分析一下别人的网页, 但很多网站的css文件都是要么写在一行,要么一个换行都没有,看起来极其痛苦,所以写一个脚本转换一下,转换为比较有可读性的格式。下面就是这个脚本:import string, sysimport re, StringIOTAB=4def format(ss):    f = open (ss, "r")    data = f.

2007-06-23 12:53:00 3324

原创 python的print对编码的处理

    python的print会对输出的文本做自动的编码转换,而文件对象的write方法就不会做,因此,当一些字符串用print输出正常时,write到文件确不一定和print的一样。    print转换的目的编码和环境变量有关,Windows XP是转换为gbk的。在linux下是按照环境变量来转换的。在linux下使用locale命令就可以看到。比如我的是:[zhaowei@papaya

2007-06-22 17:11:00 23229

原创 把python程序用jython编译为java的jar包

    jython是python的java版,他和c版本的python相比,它的优势是:可以编译为java的class文件被java程序使用,可以被java程序嵌入,可以使用java的类库。但目前jython的版本一直比较低,开发并不是很活跃,现在的最新版本是jython2.2。    这里我以一个简单的程序作为示例来看看怎么把python程序编译为java的jar包。注意的是:并不是所有的py

2007-06-19 10:00:00 18522 10

原创 python模块之threading: 在python中使用多线程

    python是支持多线程的,并且是native的线程。主要是通过thread和threading这两个模块来实现的。thread是比较底层的模块,threading是对thread做了一些包装的,可以更加方便的被使用。这里需要提一下的是python对线程的支持还不够完善,不能利用多CPU,但是下个版本的python中已经考虑改进这点,让我们拭目以待吧。    threading模块里面主要

2007-06-18 11:51:00 2931

原创 python模块之StringIO

     StringIO经常被用来作为字符串的缓存,应为StringIO有个好处,他的有些接口和文件操作是一致的,也就是说用同样的代码,可以同时当成文件操作或者StringIO操作。比如:import string, os, sysimport StringIOdef writedata(fd, msg):    fd.write(msg)    f = open(aaa.txt, 

2007-06-18 10:52:00 8808

原创 在多线程中使用sqlite太恶心了

    万万没有想到sqlite模块在多线程中有问题,只能被创建sqlite连接的线程使用,其他线程根本就不能使用!否则必然报错误,太恶心了。现在看来唯一的办法是在每个线程中都创建一个连接,每个线程自己操作数据库。这个每个线程中的连接,可以用连接池的方式事先创建好,也可以每次操作的时候重新建立。   由此看来,当在python中要使用嵌入式数据库就一定要考虑并发、多线程的情况,这方面sqlite实

2007-06-17 23:18:00 9072 4

原创 关于cookie的httponly属性

    httponly是微软对cookie做的扩展。这个主要是解决用户的cookie可能被盗用的问题。    大家都知道,当我们去邮箱或者论坛登陆后,服务器会写一些cookie到我们的浏览器,当下次再访问其他页面时,由于浏览器回自动传递cookie,这样就实现了一次登陆就可以看到所有需要登陆后才能看到的内容。也就是说,实质上,所有的登陆状态这些都是建立在cookie上的!假设我们登陆后的cook

2007-06-15 20:51:00 9014

原创 python模块之MySQLdb: 用python连接mysql数据库

    mysql是一个优秀的开源数据库,它现在的应用非常的广泛,因此很有必要简单的介绍一下用python操作mysql数据库的方法。python操作数据库需要安装一个第三方的模块,在http://mysql-python.sourceforge.net/有下载和文档。    由于python的数据库模块有专门的数据库模块的规范,所以,其实不管使用哪种数据库的方法都大同小异的,这里就给出一段示范的

2007-06-13 22:02:00 4836 1

原创 python模块之ConfigParser: 用python解析配置文件

    在程序中使用配置文件来灵活的配置一些参数是一件很常见的事情,配置文件的解析并不复杂,在python里更是如此,在官方发布的库中就包含有做这件事情的库,那就是ConfigParser,这里简单的做一些介绍。    ConfigParser解析的配置文件的格式比较象ini的配置文件格式,就是文件中由多个section构成,每个section下又有多个配置项,比如: [db]db_host=12

2007-06-13 21:03:00 16706 1

原创 python模块之HTMLParser: 解析html,获取url

    HTMLParser是python用来解析html的模块。它可以分析出html里面的标签、数据等等,是一种处理html的简便途径。HTMLParser采用的是一种事件驱动的模式,当HTMLParser找到一个特定的标记时,它会去调用一个用户定义的函数,以此来通知程序处理。它主要的用户回调函数的命名都是以handler_开头的,都是HTMLParser的成员函数。当我们使用时,就从HTMLP

2007-06-13 09:58:00 22044 1

原创 python模块之uuid

uuid是一种唯一标识,在许多领域作为标识用途。python的uuid模块就是用来生成它的。闲话不说,python提供的生成uuid的方法一共有4种,分别是:1.从硬件地址和时间生成2.从md5算法生成3.随机生成4.从SHA-1算法生成他们在uuid模块里对应uuid1, uuid3, uuid4, uuid5这几个方法,注意没有uuid2。下面是示例: #-*- encoding: g

2007-06-12 23:43:00 7537 1

原创 python模块之codecs: 自然语言编码转换

    python对多国语言的处理是支持的很好的,它可以处理现在任意编码的字符,这里深入的研究一下python对多种不同语言的处理。    有一点需要清楚的是,当python要做编码转换的时候,会借助于内部的编码,转换过程是这样的:        原有编码 -> 内部编码 -> 目的编码    python的内部是使用unicode来处理的,但是unicode的使用需要考虑的是它的编码格式有两种

2007-06-07 11:45:00 56367 5

原创 python模块之hashlib: md5和sha算法

     hashlib是个专门提供hash算法的库,现在里面包括md5, sha1, sha224, sha256, sha384, sha512,使用非常简单、方便。    md5经常用来做用户密码的存储。而sha1则经常用作数字签名。下面看看代码吧:#-*- encoding:gb2312 -*-import hashliba = "a test string"print hashl

2007-06-06 13:22:00 47531 1

原创 python模块之smtplib: 用python发送SSL/TLS安全邮件

    转载请注明原文出自 http://blog.csdn.net/zhaoweikid/    python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。smtp协议的基本命令包括:    HELO 向服务器标识用户身份    MAIL 初始化邮件传输 mail from:    RCPT 标识单个的邮件接收人;常在MAIL命令后面,可有多个rcpt t

2007-06-04 23:16:00 27417 3

原创 python模块之poplib: 用pop3收取邮件

    python的poplib模块是用来从pop3收取邮件的,也可以说它是处理邮件的第一步。    POP3协议并不复杂,它也是采用的一问一答式的方式,你向服务器发送一个命令,服务器必然会回复一个信息。pop3命令码如下: 命令 poplib方法    参数     状态     描述-------------------------------------------------------

2007-06-03 12:17:00 10555

原创 python模块之email: 电子邮件编码解码 (二、编码邮件)

用email模块来生成邮件也是很简单的,只是需要一些mime的基础知识。下面看看一点mime基础。MIME消息由消息头和消息体两大部分组成,在邮件里就是邮件头和邮件体。邮件头与邮件体之间以空行进行分隔。这点可以用文本编辑器(比如记事本)查看一个邮件的源文件就可以清除看到。outlook和foxmail自己就有查看源文件的功能。  邮件头包含了发件人、收件人、主题、时间、MIME版本、邮件内容的类型

2007-06-02 14:09:00 6879

原创 用iconv做通用的语言编码转换

   以前我写了一个gb18030到utf-8编码转换的程序,这段代码还是有些问题的,因为现在我需要对任意的两个iconv支持的语言编码做互相转换,比如GB2312, GBK, GB18030, UTF-8, UTF-16, BIG5等等,所以才有了这段程序,注释我不加了。目前这段代码是非常的稳定,测试了超过10万行的数十种编码的文本的转换都没有出问题。 #include stdio.h>

2007-06-01 22:37:00 2080

原创 python模块之email: 电子邮件编码解码 (一、解码邮件)

    python自带的email模块是个很有意思的东西,它可以对邮件编码解码,用来处理邮件非常好用。处理邮件是一个很细致的工作,尤其是解码邮件,因为它的格式变化太多了,下面先看看一个邮件的源文件:Received: from 192.168.208.56 ( 192.168.208.56 [192.168.208.56] ) by ajax-webmail-wmsvr37 (Coremail)

2007-06-01 22:00:00 22736

原创 关于python使用pyrex编译成可执行文件的问题

    转自我在百度的blog: http://hi.baidu.com/python23/    这个问题是相当有意义的,如果有了比较好的方法,python完全可以用来开发商业软件,而不用担心源代码泄露。     前两天我在网上看了看,有很多的人在问这个问题。大部分的人都在用py2exe,这是个对python程序打包的东东,实际上只是在python程序中找 出依赖的模块,然后发布这个程序。好处在

2007-06-01 20:19:00 5722 1

原创 python模块之sqlite数据库

    sqlite是非常著名的开源嵌入式数据库软件,它可以嵌入到其他程序中使用,并且提供SQL接口用来查询,非常方便。它的官方站点为http://www.sqlite.org。    windows版本的python2.5已经自带了sqlite3这个模块,是可以直接使用的。python的数据库模块有统一的接口标准,所以数据库操作都有统一的模式,基本上都是下面几步(假设数据库模块名为db):1.

2007-06-01 15:03:00 2353

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除