Python中__class__的理解

先运行下面一段代码: class A: def __init__(self,url): self.url = url def out(self): return self.urla = A('news.163.com')print a.out()b = a.__class__('www.bccn.net')print b.out()print Aprint a.__class__ 可以看出a.__class__就等效于a的类A
默认分类 | 2010-04-21 03:55 | 阅读 12437 次 | 评论 0 条

Python抓取页面中超链接(URL)的3中方法比较(HTMLParser、pyquery、正则表达式)

HTMLParser版: #!/usr/bin/python# -*- coding: UTF-8 -*-import HTMLParserclass UrlParser(HTMLParser.HTMLParser): def __init__(self): HTMLParser.HTMLParser.__init__(self) self.urls = [] def handle_starttag(self, tag, attrs): if tag == 'a': for name,value in at...
Python | 2010-04-20 20:04 | 阅读 8735 次 | 评论 0 条

Python中将字符串列表转为数字列表的两种方法

用1000个元素的列表作实验,计算它们的执行时间 首先想到的是遍历列表然后转换元素类型,组成新的列表: #!/usr/bin/python# -*- coding: UTF-8 -*-from time import clock as nowtime1 = now()txt = '1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53...
Python | 2010-04-17 18:39 | 阅读 15146 次 | 评论 0 条

用Python对字符串进行批量替换

txt = '123456789'd = {'1':'a', '2':'b', '3':'c', '4':'d', '5':'e', '6':'f', '7':'g', '8':'h', '9':'i', }for k in d: txt = txt.replace(k,d[k])print txt
Python | 2010-04-13 16:32 | 阅读 13949 次 | 评论 0 条

python实现全屏截图(win32)

#!/usr/bin/python# -*- coding: UTF-8 -*-import timeimport os, win32gui, win32ui, win32con, win32apidef window_capture(): hwnd = 0 hwndDC = win32gui.GetWindowDC(hwnd) mfcDC=win32ui.CreateDCFromHandle(hwndDC) saveDC=mfcDC.CreateCompatibleDC() saveBitMap = win32ui.CreateBitmap() ...
Python | 2010-04-10 22:14 | 阅读 7484 次 | 评论 1 条

深入理解Python中的yield

yield的英文单词意思是生产,刚接触Python的时候感到非常困惑,一直没弄明白yield的用法。只是粗略的知道yield可以用来为一个函数返回值塞数据,比如下面的例子: Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->def addlist(alist): for i in alist: yield i + 1取出alist的每一项,然后把i + 1塞进去。然后通过调用取出每一项: Co...
Python | 2010-04-10 01:12 | 阅读 1928 次 | 评论 0 条

Python中用enumerate遍历列表

enumerate在遍历时可以返回元素的索引值,如:for i, v in enumerate(a):这对于某些需要索引值的情况非常方便。如打印序号,如果不用这个方法,我们遍历一般要写成:for i in range(len(a)): print i, a[i]而使用enumerate,可以写为:for i, v in enumerate(a): print i, v 摘自:http://www.zeuux.org/pipermail/zeuux-python/2006-June/026647.html
Python | 2010-04-09 23:14 | 阅读 3064 次 | 评论 0 条

搜狗的广告做的有些过了

刚才sogou拼音输入法自动更新完毕,跳出来这个广告 攻击对手了

python内置函数map/reduce/filter

python内置函数map/reduce/filter python有几个内置的函数很有意思:map/filter/reduce,都是对一个集合进行处理,filter很容易理解用于过滤,map用于映射,reduce用于归并. 是python列表方法的三架马车。 filter() 函数:filter函数的功能相当于过滤器。调用一个布尔函数bool_func来迭代遍历每个seq中的元素;返回一个使bool_seq返回值为true的元素的序列。 >>>a=[1,2,3,4,5,6,7]>>>b=filter(lambda x:x>5, a)>>>print b>>>[6,7]如果fi...
Python | 2010-04-09 01:56 | 阅读 2216 次 | 评论 1 条

python插入记录后取得主键id的方法(cursor.lastrowid和conn.insert_id())

#!/usr/bin/python# import MySQL moduleimport MySQLdb# get user inputname = raw_input("Please enter a name: ")# connectconn = MySQLdb.connect(host="localhost", user="nobody", passwd="nobody", conn="qestar", unix_socket="/tmp/mysql.sock")# create a cursorcursor = conn.cursor()# execute SQL statemen...
Python | 2010-04-07 13:01 | 阅读 9154 次 | 评论 0 条

phpmyadmin编码整理下拉菜单编码选项过多的解决办法

用phpmyadmin管理mysql数据库很方便,但是选择“整理”的时候那个下拉菜单感觉太长了,几乎涵盖了全球所有语言的编码,而我们常用的无非就gbk、gb2312、utf8,那么长的下拉菜单每次我选择gbk的时候都很麻烦。网上搜了一下好像phpmyadmin没有设置这个下拉菜单的选项。看了一下phpmyadmin的源代码好像这些编码选项是从MYSQL数据库里面取读出来的,不作深究,用最简单的办法来解决。 打开phpmyadmin里面libraries文件下下的mysql_charsets.lib.php 找到大约11...
MySQL | 2010-04-06 14:15 | 阅读 2675 次 | 评论 1 条

vim打开utf8编码文件时中文乱码的解决办法

在配置文件,通常是vimrc,加上一行 set fileencodings=ucs-bom,utf-8,chinese,cp936
Linux | 2010-04-05 21:00 | 阅读 2650 次 | 评论 0 条

MySQLdb for Python使用指南/Python的数据库操作

网站就是要和数据库进行交互,否则什么都不用做了...今天我们来看一个叫MySQLdb的库,这个用来和MySQL数据库进行交互. 可以从这里获得这个库 http://sourceforge.net/projects/mysql-python 如果你不确定你的python环境里有没有这个库,那就打开python shell,输入 import MySQLdb,如果返回错误信息,那就表示你的机器上没有,赶紧去下载一个.我的机器是win xp,所以我下载了win环境下的exe那个,直接双击完成安装. 在介绍具体的操作前,先花点时间来说说一个程序怎么和数据库进行交互 1.和数据库建立连接 2.执行...
Python | 2010-04-03 12:01 | 阅读 2138 次 | 评论 0 条

Python祛除列表中重复的元素

比较容易记忆的是用内置的set l1 = ['b','c','d','b','c','a','a']l2 = list(set(l1))print l2 还有一种据说速度更快的,没测试过两者的速度差别 l1 = ['b','c','d','b','c','a','a']l2 = {}.fromkeys(l1).keys()print l2 这两种都有个缺点,祛除重复元素后排序变了: ['a', 'c', 'b', 'd'] 如果想要保持他们原来的排序: 用list类的sort方法 l1 = ['b','c','d','b','c...
Python | 2010-04-02 16:46 | 阅读 2551 次 | 评论 0 条

python set 简单应用

set也是python里一个重要类型,有时候还是蛮好用的。详细文档和说明可以用help(set) 查看其说明和方法。 下面来点简单的小例子说明把。 >>> x = set('spam') >>> y = set(['h','a','m']) >>> x, y (set(['a', 'p', 's', 'm']), set(['a', 'h', 'm'])) 再来些小应用。 >>> x & y # 交集 set(['a', 'm']) >>> x | y # 并集 set(['a', 'p', 's', 'h', 'm']) >>> x - y # 差集 set(['p', 's'...
Python | 2010-04-02 16:15 | 阅读 1832 次 | 评论 0 条

python实现php的explode和implode

php的explode和implode很方便,python没有这两个函数,不过python有split和join 实现explode >>> str = 'a|b|c|d|e'>>> str.split("|")['a', 'b', 'c', 'd', 'e'] 实现implode >>> list = ['a', 'b', 'c', 'd', 'e']>>> "|".join(list)'a|b|c|d|e'
Python | 2010-04-02 15:47 | 阅读 16943 次 | 评论 1 条

HTML UTF-8编码转换成Python的可读形式

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> </head><body>&amp;#29256;&amp;#26435;&amp;#x6240;&amp;#x6709;</body></html> >>> print unichr(29256)版>>> print unichr(26435)权>>> print unichr(0x6240)所>>> print unichr(0x6709)有
默认分类 | 2010-04-02 13:18 | 阅读 1840 次 | 评论 1 条
浏览2776828次
文章归档