2007年12月08日 星期六 19:00
ËÄܸøµãÌáʾ£º def instance(parameters): global _instance try: _instance except: _instance = manager(parameters) return _instance ÆäÖÐtryÓï¾äÖеıäÁ¿Ãû_instanceµÄÖ±½Óµ÷ÓÃÊÇʲôÓ÷¨£¿ ¸øµã×ÊÁÏÁ´½Ó»òÌáʾ¾ù¿É£¬Ð»ÁË£¡ -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20071208/0e8b2afb/attachment.html
2007年12月08日 星期六 19:20
It's not a wired grammar. In this function, first you declare a global variant _Instance, which will trigger an exception when you use it without a value assigned to it. It's a very very simple singleton pattern. Thanks. On Sat, 2007-12-08 at 19:00 +0800, shan jin wrote: > 中的变量名_instance的直
2007年12月08日 星期六 19:28
ËÄܸøµãÌáʾ£º def instance(parameters): global _instance try: _instance except: _instance = manager(parameters) return _instance ÆäÖÐtryÓï¾äÖеıäÁ¿Ãû_instanceµÄÖ±½Óµ÷ÓÃÊÇʲôÓ÷¨£¿ ¸øµã×ÊÁÏÁ´½Ó»òÌáʾ¾ù¿É£¬Ð»ÁË£¡ -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20071208/93f58151/attachment.html
2007年12月08日 星期六 19:57
2007/12/8 shan jin <jinshanhuster在gmail.com>: > 谁能给点提示: > def instance(parameters): > global _instance > try: > _instance > except: > _instance = manager(parameters) > return _instance > > > 其中try语句中的变量名_instance的直接调用是什么用法? > 给点资料链接或提示均可,谢了! > 意思就是想判断是否已经存在_instance这个实量了,如果存在try不会有问题,如果不存在,则创建一个。 -- I like python! UliPad <>: http://code.google.com/p/ulipad/ meide < >: http://code.google.com/p/meide/ My Blog: http://www.donews.net/limodou
2007年12月09日 星期日 09:23
每一种语言都有判断表达式真假的标准。C是认为除了0之外,其他都是真的,shell认为除了0之外,其他都是假的。而Java则认为只有boolean值才能算真假,对其他类型的值判断真假属于语法错误。 Py的做法也不算很出格。基本上它认为,None,False,空的字符串,空的集合,以及0是假的,其他是真的。 我这里只是一个大致的介绍,具体Py的判断标准,请查看Py的language reference,不过我很怀疑是否有这个必要。 On Dec 8, 2007 6:57 AM, limodou <limodou在gmail.com> wrote: > 2007/12/8 shan jin <jinshanhuster在gmail.com>: > > > 谁能给点提示: > > def instance(parameters): > > global _instance > > try: > > _instance > > except: > > _instance = manager(parameters) > > return _instance > > > > > > 其中try语句中的变量名_instance的直接调用是什么用法? > > 给点资料链接或提示均可,谢了! > > > 意思就是想判断是否已经存在_instance这个实量了,如果存在try不会有问题,如果不存在,则创建一个。 > > -- > I like python! > UliPad <>: http://code.google.com/p/ulipad/ > meide <>: http://code.google.com/p/meide/ > My Blog: http://www.donews.net/limodou > > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese
2007年12月09日 星期日 09:39
2007/12/9 shhgs <shhgs.efhilt在gmail.com>: > 每一种语言都有判断表达式真假的标准。C是认为除了0之外,其他都是真的,shell认为除了0之外,其他都是假的。而Java则认为只有boolean值才能算真假,对其他类型的值判断真假属于语法错误。 > > Py的做法也不算很出格。基本上它认为,None,False,空的字符串,空的集合,以及0是假的,其他是真的。 > > 我这里只是一个大致的介绍,具体Py的判断标准,请查看Py的language reference,不过我很怀疑是否有这个必要。 > 我已经非常习惯这种真假值的判断,更符合日常的习惯理解。 -- I like python! UliPad <>: http://code.google.com/p/ulipad/ meide < >: http://code.google.com/p/meide/ My Blog: http://www.donews.net/limodou
2007年12月09日 星期日 10:12
... Not true or false, it's exception... ÔÚ07-12-9£¬shhgs <shhgs.efhilt在gmail.com> дµÀ£º > > > ÿһÖÖÓïÑÔ¶¼ÓÐÅжϱí´ïʽÕæ¼ÙµÄ±ê×¼¡£CÊÇÈÏΪ³ýÁË0Ö®Í⣬ÆäËû¶¼ÊÇÕæµÄ£¬shellÈÏΪ³ýÁË0Ö®Í⣬ÆäËû¶¼ÊǼٵġ£¶øJavaÔòÈÏΪֻÓÐbooleanÖµ²ÅÄÜËãÕæ¼Ù£¬¶ÔÆäËûÀàÐ͵ÄÖµÅжÏÕæ¼ÙÊôÓÚÓï·¨´íÎó¡£ > > PyµÄ×ö·¨Ò²²»ËãºÜ³ö¸ñ¡£»ù±¾ÉÏËüÈÏΪ£¬None£¬False£¬¿ÕµÄ×Ö·û´®£¬¿ÕµÄ¼¯ºÏ£¬ÒÔ¼°0ÊǼٵģ¬ÆäËûÊÇÕæµÄ¡£ > > ÎÒÕâÀïÖ»ÊÇÒ»¸ö´óÖµĽéÉÜ£¬¾ßÌåPyµÄÅжϱê×¼£¬Çë²é¿´PyµÄlanguage reference£¬²»¹ýÎҺܻ³ÒÉÊÇ·ñÓÐÕâ¸ö±ØÒª¡£ > > On Dec 8, 2007 6:57 AM, limodou <limodou在gmail.com> wrote: > > 2007/12/8 shan jin <jinshanhuster在gmail.com>: > > > > > ËÄܸøµãÌáʾ£º > > > def instance(parameters): > > > global _instance > > > try: > > > _instance > > > except: > > > _instance = manager(parameters) > > > return _instance > > > > > > > > > ÆäÖÐtryÓï¾äÖеıäÁ¿Ãû_instanceµÄÖ±½Óµ÷ÓÃÊÇʲôÓ÷¨£¿ > > > ¸øµã×ÊÁÏÁ´½Ó»òÌáʾ¾ù¿É£¬Ð»ÁË£¡ > > > > > Òâ˼¾ÍÊÇÏëÅжÏÊÇ·ñÒѾ´æÔÚ_instanceÕâ¸öʵÁ¿ÁË£¬Èç¹û´æÔÚtry²»»áÓÐÎÊÌ⣬Èç¹û²»´æÔÚ£¬Ôò´´½¨Ò»¸ö¡£ > > > > -- > > I like python! > > UliPad <>: http://code.google.com/p/ulipad/ > > meide <>: http://code.google.com/p/meide/ > > My Blog: http://www.donews.net/limodou > > > > _______________________________________________ > > python-chinese > > Post: send python-chinese在lists.python.cn > > Subscribe: send subscribe to python-chinese-request在lists.python.cn > > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > > Detail Info: http://python.cn/mailman/listinfo/python-chinese > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20071209/c4a77fd5/attachment.htm
2007年12月09日 星期日 11:26
On Dec 9, 2007 9:23 AM, shhgs <shhgs.efhilt在gmail.com> wrote: > 每一种语言都有判断表达式真假的标准。C是认为除了0之外,其他都是真的,shell认为除了0之外,其他都是假的。而Java则认为只有boolean值才能算真假,对其他类型的值判断真假属于语法错误。 > > Py的做法也不算很出格。基本上它认为,None,False,空的字符串,空的集合,以及0是假的,其他是真的。 另外,如果A是一个自定义类,且A包含__len__方法,那么若它的实例a满足len(a)==0, 则python也会认为a是假的。这时 if a: 相当于 if len(a):。好像__nozero__方法也有类似的 效果,不过我没有实际用过。 > > 我这里只是一个大致的介绍,具体Py的判断标准,请查看Py的language reference,不过我很怀疑是否有这个必要。
Zeuux © 2024
京ICP备05028076号