Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Python×°ÊÎÆ÷

Ô­ÎÄ£ºhttp://www.klipdas.com/blog/?p=python-decorator
python×°ÊÎÆ÷½éÉÜ
Python 2.2ÖÐÒýÈëµÄ classmethod() ºÍ staticmethod() ÄÚÖú¯Êý£¬Äã¿ÉÒÔÕâÑùµ÷ÓÃclassmethod()£º
class A:
def foo(self, y):
print y
foo = classmethod(foo)
Ò²¿ÉÒÔÕâÑù£º
class A:
@classmethod
def foo(self, y):
print y
ËäÈ»classmethodÊÇÄÚÖú¯Êý£¬µ«ËüºÍÆÕͨµÄº¯ÊýûÓÐÁ½Ñù£¬Òò´ËÄãÒ²¿ÉÒÔ´´½¨×Ô¼ºµÄº¯Êýת»¯Âß¼­£¬È磺
def mydecorator(func):
print 'mydecorator was called.'
func.name = 'myfun'
return func
¸ÃÐÞÊÎÆ÷½«ÉÔ΢ÐÞ¸ÄÁËÔ­º¯ÊýµÄÂß¼­£ºÊ×ÏÈ´òÓ¡Ò»¶ÎÎÄ×Ö“mydecorator was called.”£¬È»ºó¸øÔ­º¯ÊýÌí¼ÓÁËÒ»¸önameÊôÐÔ£¬ÊôÐÔֵΪ"myfun"£¬Ö®ºóÔÙ½«º¯Êý·Å»Ø£¬Ê¹Ó÷½·¨ºÍµ÷Óýá¹ûÈçÏ£º
class A:
@mydecorator
def foo(self, y):
print y
if __name__ == '__main__':
a = A()
a.foo(1)
ÔËÐнá¹ûΪ£º
mydecorator was called.
1
ÒÔÉϼò½éÎÒÃÇ¿ÉÒÔ´óÖÂÁ˽âÁËpython×°ÊÎÆ÷µÄ×÷Óá£
×°ÊÎÆ÷µÄµ÷ÓÃÂß¼­
ÈçÉÏÒ»½ÚµÄʾÀýÖÐÎÒÃÇ·¢ÏÖ£¬Ê¹ÓÃ×°ÊÎÆ÷µÄʱºòÊÇ@mydecorator£¬»òÕßÊÇfoo=mydecorator(foo)£¬¶ø²»ÊÇ@mydecorator()£¬»òÕßfoo=mydecorator(foo)()¡£ÏÔÈ»£¬ÎÒÃÇÒªµÄ×°ÊÎÆ÷ÊǸöº¯Êý£¬¶ø²»ÊǺ¯ÊýµÄ½á¹û¡£ÒòΪÎÒÃÇÒª½«ÎÒÃÇÒªÐÞÊεĺ¯Êýfoo£¨¼´ÀϺ¯Êý£©´«µÝ¸øÐÞÊκ¯Êýmydecorator£¬²¢ÇÒÐÞÊκ¯ÊýmydecoratorÒ²·µ»ØÒ»¸öк¯Êý£¨ÉÏÒ»µÄк¯ÊýÊÇÔÚÀϺ¯ÊýµÄ»ù´¡ÉÏÌí¼ÓÁËÒ»¸öÊôÐÔ£©¡£
´ø²ÎÊý×°ÊÎÆ÷
ÉÏÒ»½ÚµÄ½éÉÜ×°ÊÎÆ÷µÄµ÷Óùý³Ì£¬ÎÒÃÇ¿ÉÒÔÃ÷°×£¬@mydecoratorÊǸöº¯Êý£¬¶øÇÒÊǸöº¯Êý¾Í¿ÉÒÔ£¬Êµ¼ÊÉÏÊDZØÐëҪʵÏÖ__call__·½·¨µÄ¶ÔÏó¾Í¿ÉÒÔÁË¡£Ò²¾ÍÊÇ˵װÊÎÆ÷¿ÉÒÔ¶¨Òå³ÉʵÏÖÁË__call__·½·¨µÄclassÒ²¿ÉÒÔÊÇÆäËûµÄÈκηµ»Øº¯ÊýµÄ“¶ÔÏ󔣬ºóÕßʵÏֽϸ´ÔÓ£¬µ«¹¦ÄÜÇ¿´ó¡£
ʵÏÖ__call__·½·¨µÄclassʾÀý£º
class mydecorator:
def __init__(self, func):
self.func = func
def __call__(self):
print “mydecorator was called.”
return self.func
ʹÓ÷½·¨Í¬Ç°ÃæµÄʾÀýÒ»Ñù£¬ÒòΪÎÒÃÇ¿ÉÒÔÏñº¯ÊýÒ»Ñùµ÷ÓøÃÀࣺmydecorator()£¬²»Í¬µÄÊÇ£¬¸ÃÀàÊÇÒÔ±»×°Êεĺ¯Êý×÷Ϊ¹¹Ôì²ÎÊý£¬¶ø²»ÊÇ×÷Ϊ__call__µÄ²ÎÊý¡£¸ü¸´ÔÓµÄ×°ÊÎÆ÷£º
def mydecorator(arg):
print “arg is ”, arg
def newdec(func):
print ‘new decor


Ïà¹ØÎĵµ£º

python 3.0Óëpython 2.xµÄÇø±ð

 ÕýÔÚÔĶÁ×îаæµÄ¡¶A byte of Python¡·¡£·¢ÏÖPython3.0ÔÚijЩµØ·½»¹ÊÇÓÐЩ¸Ä±äµÄ¡£×¼±¸ÂýÂýµÄÌå»á£¬ÓëÀϰ汾µÄ¡¶A byte of Python¡·×ö¶Ô±È£¬×îºóÔÙÈ¥²éÔĹٷ½ÍøÕ¾µÄÎĵµ¡£
1.
Èç¹ûÄãÏÂÔØµÄÊÇ×îаæµÄPython£¬¾Í»á·¢ÏÖËùÓÐÊéÖеÄHello WorldÀý×Ó½«²»ÔÙÕýÈ·¡£
Old:
print "Hello World!" #´òÓ¡×Ö·û´®
New:
......

Python Ö®ìø

import this
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough t ......

Python , Delphi , Loki ÓÐȤµÄÀ´Ô´

 Python , Delphi , Loki Èý¸öµ¥´ÊÓÐȤµÄÀ´Ô´
Ðí¶à³ÌÐòÉè¼ÆÓïÑԺͿª·¢¹¤¾ßÒÔ¼°¿âµÄÃû×Ö¶¼À´Ô´ÓëÉñ»°£¬ÆÄÓÐÒâ˼£º
     °¢²¨ÂÞÊÇͬʱ³öÏÖÔÚÏ£À°ºÍÂÞÂíÉñ»°ÖеİÂÁÖÅÁ˹ʮ¶þ´óÉñÖ®Ò»¡£Ëû³ýÁËÓµÓÐÌ«ÑôÉñµÄÉí·Ö£¬Í¬Ê±»¹ÓÐÔ¤ÑÔ¡¢ÒÕÊõ¡¢Ò½ÊõÖ®ÉñµÄ³ÆºÅ¡£°¢²¨ÂÞÊÇÖæË¹ºÍÀÖ¶äµÄ¶ù×Ó£¬ºÍ°¢µÙÃÛ˹ÊÇË ......

Python¿ª·¢Activex×é¼þ

PythonÇ¿µÄ¹¦ÄܾÍÔÚÓÚËüÎÞËù²»ÄÜ¡£
ʹÓÃwin32comÄ£¿é¿ª·¢window ActiveXµÄʾÀý£º£¨Èç¹ûÄ㻹ûÓÐ×°win32comÄ£¿éµÄ»°£¬Çëµ½http://python.net/crew/skippy/win32/Downloads.htmlÏÂÔØ£©¡£
# SimpleCOMServer.py
class PythonUtilities:
_public_methods_ = ['SplitString']
_reg_progid_ = "Python.Utilities"
......

ʹÓÃPythonÓïÑÔÉè¼Æ»ùÓÚHTMLµÄCÓïÑÔÓï·¨¼ÓÁÁÏÔʾ³ÌÐò

2005-2006ѧÄêµÚ1ѧÆÚ
±à Òë Ô­ Àí 
¿Î ³Ì Éè ¼Æ ±¨ ¸æ
°à¼¶   02¼Æ(¶þ)   
ѧºÅ     19     
ÐÕÃû     ÁõÏþÃ÷     
³É¼¨           
Ö¸µ¼½Ìʦ   ¬³¯»Ô   
Ò»¡¢   Éè¼ÆÄ¿µÄ
¼ÓÉî¶Ô±àÒ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ