代码改变世界

随笔分类 -  python

Python中的__init__,__call__

2014-02-24 00:19 by 江湖么名, 6075 阅读, 收藏, 编辑
摘要: __init__函数当一个类实例被创建时, __init__() 方法会自动执行,在类实例创建完毕后执行,类似构建函数。__init__() 可以被当成构建函数,不过不象其它语言中的构建函数,它并不创建实例--它仅仅是你的对象创建后执行的第一个方法。它的目的是执行一些该对象的必要的初始 化工作。通过创建自己的 __init__() 方法,你可以覆盖默认的 __init__()方法(默认的方法什么也不做),从而能够修饰刚刚创建的对象__init__()需要一个默认的参数self,相当于this。__call函数Python中有一个有趣的语法,只要定义类型的时候,实现__call__函数,这个类型 阅读全文

python 类继承

2014-02-06 11:19 by 江湖么名, 18377 阅读, 收藏, 编辑
摘要: 1 #!/usr/bin/python 2 # Filename: inherit.py 3 4 class SchoolMember: 5 '''Represents any school member.''' 6 def __init__(self, name, age): 7 self.name = name 8 self.age = age 9 print'(Initialized SchoolMember: %s)'% self.name10 11 def tell(self):12 '''T.. 阅读全文

运行python程序不显示cmd的方法

2014-01-29 13:38 by 江湖么名, 21408 阅读, 收藏, 编辑
摘要: 运行python程序的时候会在背景显示一个cmd,要想不显示其实很简单(虽然是我找了1个小时...才了解的基本知识)方法1:pythonw xxx.py方法2:将.py改成.pyw (这个其实就是使用脚本解析程序pythonw.exe)原文: 1) Try changing the file extension to .pyw. Double-clicking a .pyw will use pythonw.exe instead of python.exe.2)python.exe运行的时候有个控制台窗口如果你的python代码有gui,用python.exe运行就会跑出一个黑窗口如果用ph 阅读全文

py2exe使用方法

2014-01-29 12:40 by 江湖么名, 576 阅读, 收藏, 编辑
摘要: py2exe作者:zzj 日期:2006-07-05http://www.cnblogs.com/jans2002/archive/2006/09/30/519393.html一、简介py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame,win32comclient和server,和其它的独立程序。py2exe是发布在开源许可证下的。二、安装py2exe从http://prdo 阅读全文

python 类

2014-01-28 07:36 by 江湖么名, 200 阅读, 收藏, 编辑
摘要: class Person: population = 0 def __init__(self, name): self.name = name Person.population += 1 def __del__(self): print 'now,%d destory'%Person.population print "\n" def sayHi(self): print 'Hello, how are you%d'%Person.population print ... 阅读全文

Python WindowsError

2013-12-07 20:53 by 江湖么名, 542 阅读, 收藏, 编辑
摘要: WindowsError: [Error 2] The system cannot find the file specifiedWindowsError: [Error 3] The system cannot find the path specifiedWindowsError: [Error 5] Access is deniedWindowsError: [Error 13] The process cannot access the file because it is being used by another process 阅读全文

python 截取指定长度汉字

2013-08-01 13:35 by 江湖么名, 584 阅读, 收藏, 编辑
摘要: 这个方法不是很好,不知道有没有更好的方法def cut_hz(s, length): charstyle = chardet.detect(s) t = s[:length] try: unicode(t, charstyle['encoding']) except: t = s[:length-1] return t这样更好一点def cut_hz(s, length): charstyle = chardet.detect(s) uni_s = unicode(s, charstyle['encoding']) r... 阅读全文

python打印所有汉字

2013-08-01 13:20 by 江湖么名, 941 阅读, 收藏, 编辑
摘要: n=0for ch in xrange(0x4e00, 0x9fa6): print unichr(ch), n = n+1 if(n%50==0): print '\n'print n 阅读全文

python检测文件的MD5值

2013-08-01 11:54 by 江湖么名, 17067 阅读, 收藏, 编辑
摘要: python检测文件的MD5值MD5(单向散列算法)的全称是Message-Digest Algorithm 5(信息-摘要算法),经MD2、MD3和MD4发展而来。MD5算法的使用不需要支付任何版权费用。#python 检测文件MD5值#python version 2.6 import hashlibimport os,sys #简单的测试一个字符串的MD5值def GetStrMd5(src): m0=hashlib.md5() m0.update(src) print m0.hexdigest() pass #大文件的MD5值def GetFileMd5(fil... 阅读全文

python 字符集转换-灰常慢

2013-08-01 09:21 by 江湖么名, 378 阅读, 收藏, 编辑
摘要: 代码def toUni (text): str = text try: charstyle = chardet.detect(text) # print 'confidence: ', charstyle['confidence'] # 猜测精度 if ( charstyle['encoding'] == 'GB2312' ): str = text.decode( charstyle['encoding'], 'replace') elif ( charstyle['encoding 阅读全文

python版GetTickCount()

2013-08-01 08:53 by 江湖么名, 1680 阅读, 收藏, 编辑
摘要: time.clock()return the current processor time as a floating point number expressed in seconds.即返回一个浮点数,精度是毫秒例time.sleep(2.5)y = time.clock()print y - x返回值2.4998947806 阅读全文

Python中的锁

2013-07-29 17:29 by 江湖么名, 5620 阅读, 收藏, 编辑
摘要: 先用thread模块的Lock锁来实现生产者消费者问题,Lock对象是Python提供的低级线程控制工具,使用起来非常简单,只需下面3条语句即可:thread.allocate_lock()返回一个新Lock对象,即为一个新锁lock.acquire()相当于P操作,得到一个锁lock.release()相当于V操作,释放一个锁lock.locked()已经得到了锁,返回True(一般用不到) 1 import thread,time,random 2 dish = 0 #需要放在安全区的变量 3 lock = thread.allocate_lock () 4 def producerF.. 阅读全文

python毫秒级sleep

2013-07-29 16:27 by 江湖么名, 116659 阅读, 收藏, 编辑
摘要: Python中的sleep函数可以传小数进去,然后就可以进行毫秒级的延时了 1 # 例1:循环输出休眠1秒 2 import time 3 i = 1 4 while i = 3: 5 print i # 输出i 6 i += 1 7 time.sleep(1) # 休眠1秒 8 9 # 例1:循环输出休眠100毫秒10 import time11 i = 112 while i = 3:13 print i # 输出i14 i += 115 time.sleep(0.1) # 休眠0.1秒 阅读全文

python怎么解压压缩的字符串数据

2013-07-28 18:22 by 江湖么名, 13060 阅读, 收藏, 编辑
摘要: 范例1: gzipimport StringIOimport gzipcompresseddata = gzip方式压缩的字符串(html)compressedstream = StringIO.StringIO(compresseddata)gzipper = gzip.GzipFile(fileobj=compressedstream)data = gzipper.read() # data就是解压后的数据一个简单的例子 1 import urllib2 2 from StringIO import StringIO 3 import gzip 4 5 def loadData(url.. 阅读全文

python全局变量被覆盖的问题

2013-07-28 13:06 by 江湖么名, 1402 阅读, 收藏, 编辑
摘要: 下面的情况,foo全局变量会被局部变量覆盖掉,这样在其它地方使用的值就是空值。 1 g_foo = '' #全局变量 2 3 def set(): 4 g_foo = 'abc' # 给全局变量赋值 5 6 def use_var() 7 print g_foo # 使用全局变量,这里会打印 None 8 9 set()10 use_var()使用全局变量,需要明确的声明(global) 1 g_foo = '' #全局变量 2 3 def set(): 4 global g_foo 5 g_foo = 'abc' # 给全局变量 阅读全文

Python中is和==的区别

2013-07-28 11:52 by 江湖么名, 400 阅读, 收藏, 编辑
摘要: 通常我们写:1 if foo is None: pass这个写法与以下的写法有何区别呢?1 if foo == None: passis当比较的是相同的对象实例时总是返回True。而==则完全决定于__eq__()方法的实现。例如:1 >>> class foo(object):2 def __eq__(self, other):3 return True4 5 >>> f = foo()6 >>> f == None7 True8 >>> f is None9 FalsePython中的对象包含三要素:id、type、v 阅读全文

python中,将字符串由utf8转gbk

2013-07-26 01:46 by 江湖么名, 951 阅读, 收藏, 编辑
摘要: uni_str = utf8_str.decode('utf-8');gbk_str = uni_str.encode('gbk'); 阅读全文

str 编码

2013-07-26 00:00 by 江湖么名, 286 阅读, 收藏, 编辑
摘要: 你需要的是让编码用实际编码而不是 ascii1对需要 str->unicode 的代码,可以在前边写上import sysreload(sys)sys.setdefaultencoding('utf8')把 str 编码由 ascii 改为 utf8 (或 gb18030)2.python3 区分了 unicode str 和 byte arrary,并且默认编码不再是 ascii3. 字符串转为unicode判断是不是unicode : isinstance (in_str, unicode) 是返回Trueuni_str = unicode(in_str," 阅读全文

Eclipse+PyDev

2013-07-25 10:12 by 江湖么名, 191 阅读, 收藏, 编辑
摘要: Eclipse+PyDevsudo apt-get install openjdk-6-jdksudo apt-get install eclipseHelp-->Install New Software-->Add-->Name:PyDev-->Location:http://pydev.org/updatesPyDev-->PyDev for EclipsePreference-->PyDev-->Interpreter-->Interpreter Name:Python-->Interpreter Executable:/usr/bi 阅读全文

python入门

2013-07-24 16:46 by 江湖么名, 264 阅读, 收藏, 编辑
摘要: python脚本默认py结尾#encoding:utf-8# 从#开始到本行结束都是注释print "hello world"print "number is %d, string is %s" % ( 10, "demo")# len(obj)返回对象长度# int(obj)对象转换为整形# str(obj)对象转换为字符串# type(obj)对象的类型(返回type对象)#用户输入name = raw_input ( 'please enter name:')print "you enter is &q 阅读全文