摘要: 要掌握py的多线程编程得先了解这个GIL.全局解释器锁(GLOBAL INTERPRETER LOCK):全局解释锁机制保证同一时刻只有一个字节码(bytecode)进程在运行,当前线程想要安全访问对象时,必须先获取GIL,因此,只有获取GIL的线程才有资格去操作py对象或调整py的API函数. 阅读全文
posted @ 2012-12-03 23:23 践道者 阅读(1242) 评论(0) 推荐(0) 编辑
摘要: 1、NameError:尝试访问一个未申明的变量>>> vNameError: name 'v' is not defined2、ZeroDivisionError:除数为0>>> v = 1/0ZeroDivisionError: int division or modulo by zero3、SyntaxError:语法错误>>> int intSyntaxError: invalid syntax (<pyshell#14>, line 1)4、IndexError:索引超出范围>>> L 阅读全文
posted @ 2012-12-03 16:58 践道者 阅读(7143) 评论(0) 推荐(0) 编辑
摘要: handler对象有以下几个,常用的为StreamHandler、FileHandler:StreamHandlerFileHandlerNullHandlerWatchedFileHandlerRotatingFilehandlerTimedRotatingFilehandlerSocketHandlerDatagramHandlerSysLoghandlerMemoryhandlerHTTPHandlerHandler的三个基础操作:1、设置输出格式 设置输出格式要用到的对象是Formatter,初始化方法 formater = logging.Formatter(格式) handler. 阅读全文
posted @ 2012-12-03 14:05 践道者 阅读(1668) 评论(0) 推荐(0) 编辑
摘要: import sysis_jython = sys.platform.startswith('java')is_pypy = hasattr(sys, 'pypy_version_info')is_win = (sys.platform == 'win32')is_cygwin = (sys.platform == 'cygwin')is_darwin = (sys.platform == 'darwin') 阅读全文
posted @ 2012-12-03 11:43 践道者 阅读(844) 评论(0) 推荐(0) 编辑
摘要: logger:日志对象,logging模块中最基础的对象,用logging.getLogger(name)方法进行初始化,name可以不填。通常logger的名字我们对应模块名,如聊天模块、数据库模块、验证模块等。logger对象的常用方法有:setLevel:设置日志等级日志等级分别有以下几种: CRITICAL : 'CRITICAL', ERROR : 'ERROR', WARNING : 'WARNING', INFO : 'INFO', DEBUG : 'DEBUG', NOTSET : 'NOT 阅读全文
posted @ 2012-12-03 11:40 践道者 阅读(16760) 评论(0) 推荐(1) 编辑
摘要: 在项目中使用到的一个方法 1 def postToGoogle(self, postData): 2 cookieFile = filepath 3 html = StringIO.StringIO() 4 c = pycurl.Curl() 5 c.fp = html 6 c.setopt(pycurl.URL, loginAction_url) #目标url 7 c.setopt(pycurl.WRITEFUNCTION, html.write) 8 c.setopt(p... 阅读全文
posted @ 2012-12-03 11:01 践道者 阅读(713) 评论(0) 推荐(0) 编辑