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

python µÄº¯ÊýDecorators

DecoratorsÊÇpythonÖбȽÏÄÑÒÔÀí½âµÄ¶«Î÷£¬µ±È»Èç¹ûÄã½Ó´¥¹ýjavaµÄannotation£¬»á·¢ÏÖÕâ¸öDecoratorsÔÚÓï·¨ÉϷdz£µÄÏàËÆ£¬µ«ÊÇÁ½ÕßµÄÉè¼Æ¶¯»úȴûʲô¹²Í¬µã£»
ÕâÀï½²µÄpythonÖеÄdecoratorsÊǶÔpythonÖеÄfunction/method×ö×°ÊΣ¬ÕâЩÐÞÊνöÊǵ±ÉùÃ÷Ò»¸öº¯Êý»òÕß·½·¨µÄʱºò£¬²Å»áÓ¦ÓõĶîÍâµ÷Óá£
pythonÖеÄdecorator·ÖΪÓвÎÊýµÄºÍÎÞ²ÎÊýµÄÁ½ÖÖ£º
@deco
def foo(): pass
µÈ¼Û£ºfoo = deco(foo)
ÓвÎÊýµÄdecoratorµÈ¼Û£º
@deco(deco_args)
def foo(): pass
µÈ¼Û£ºfoo = deco(deco_args)(foo)
´ÓÉÏÃæ×öµÄÁ½¸öµÈ¼Û¿ÉÒÔ¿´³ö£ºdeco±¾ÉíÊÇÒ»¸öº¯Êý£¬Æä½ÓÊܱ»ÐÞÊεķ½·¨×÷Ϊ²ÎÊý£¬deco·µ»ØµÄÓ¦¸ÃÒ²ÊÇÒ»¸öfunction/method£¬Õâ¸ö·µ»ØµÄfunctionÓ¦¸ÃºÍ±»ÐÞÊεÄfunc¾ßÓÐÏàͬµÄ²ÎÊýÁбíºÍ·µ»ØÖµ£¨Ò»°ãÊÇreturn func()£©.
decoratorsµÄÓÃ;¿ÉÒÔÀà±ÈjavaÖеÄaop¸ÅÄΪ·½·¨ÒýÈëͨÓõŦÄÜ£¬ÀýÈçlog¡¢perfomanceµÈ£»ÀýÈ磺£¨eg from core python programming£©
3  from time import time
4
5  def logged(when):
6      def log(f, *args, **kargs):
7          print '''Called:
8  function: %s
9  args: %r
10 kargs: %r''' % (f, args, kargs)
11
12     def pre_logged(f):
13         def wrapper(*args, **kargs):
14             log(f, *args, **kargs)
15             return f(*args, **kargs)
16         return wrapper
17
18     def post_logged(f):
19         def wrapper(*args, **kargs):
20             now = time()
21             try:
22                 return f(*args, **kargs)
23             finally:
24 &n


Ïà¹ØÎĵµ£º

PythonÖÐÊý¾Ý½á¹¹ Áбí Ôª×é ×Öµä ÐòÁÐ


Áбí
listÊÇ´¦ÀíÒ»×éÓÐÐòÏîÄ¿µÄÊý¾Ý½á¹¹£¬¼´Äã¿ÉÒÔÔÚÒ»¸öÁбíÖд洢һ¸ö ÐòÁÐ
µÄÏîÄ¿¡£¼ÙÏëÄãÓÐÒ»¸ö¹ºÎïÁÐ±í£¬ÉÏÃæ¼ÇÔØ×ÅÄãÒªÂòµÄ¶«Î÷£¬Äã¾ÍÈÝÒ×Àí½âÁбíÁË¡£Ö»²»¹ýÔÚÄãµÄ¹ºÎï±íÉÏ£¬¿ÉÄÜÿÑù¶«Î÷¶¼¶À×ÔÕ¼ÓÐÒ»ÐУ¬¶øÔÚPythonÖУ¬
ÄãÔÚÿ¸öÏîÄ¿Ö®¼äÓöººÅ·Ö¸î¡£
ÁбíÖеÄÏîÄ¿Ó¦¸Ã°üÀ¨ÔÚ·½À¨ºÅÖУ¬ÕâÑùPython¾ÍÖªµÀÄãÊÇ ......

ÒÔPython Imaging Library ½øÐÐÓ°Ïñ×ÊÁÏ´¦ÀíPIL


1   Ó°ÏñÓëͼÐÎ×ÊÁϵĴ¦Àí
ÌÖÂÛͼÐÎ(Ó°Ïñ) ±¾ÉíµÄ´¦Àí£¬¶øÌÖÂÛµÄÄÚÈݽ«»á¼¯ÖÐÔÚPython Imaging Library (PIL) ÕâÒ»Ì׳Ìʽ¿âÉÏ¡£
PIL ÊÇPython ÏÂ×îÓÐÃûµÄÓ°Ïñ´¦ÀíÌ×¼þ£¬ÓÉÐí¶à²»Í¬µÄÄ£×éËù×é³É£¬²¢ÇÒÌṩÁËÐí¶àµÄ´¦Àí¹¦ÄÜ£¬ÔÊÐíÎÒÃÇÔÚ¼òµ¥µÄPython ³ÌʽÀï½øÐÐÓ°ÏñµÄ´¦Àí¡£ Ê¹ÓÃÏñPIL ÐíÑùµÄ³Ìʽ¿âÌ ......

[python]PLYÄ£¿é Lex/YACCµÄpythonʵÏÖ

  PLYÄ£¿é ÊÇLex/YACCPython µÄʵÏÖ£¬¿ÉÒÔÓÃÀ´ÊµÏÖ´Ê·¨·ÖÎö/Óï·¨·ÖÎö£¬µ«ÈçºÎÓ㬻¹Ã»Ñо¿£¬ÒÔºóÓÐʱ¼äÔÙÑо¿°É£»
  Ö÷Ò³: http://www.dabeaz.com/ply/
  pycparserÄ£¿é ÊÇʹÓÃPLYÄ£¿é·ÖÎöcÓïÑÔÓï·¨µÄÄ£¿é£¬Ã»Ê²Ã´Îĵµ£¬µ«Ä£¿é×Ô´øÁËÀý×ӺͲâÊÔÓÃÀý¡£
   Ö÷Ò³: http://code.google.com/p/pycpa ......

´î½¨pythonµÄeclipse¿ª·¢»·¾³

Èí¼þ×¼±¸£º
1.eclipse¿ª·¢°ü£¬ÏÂÔصØÖ·£ºhttp://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/SR2/eclipse-java-galileo-SR2-win32.zip
2.pydev²å¼þ£¬ÏÂÔصØÖ·£ºhttp://sourceforge.net/projects/pydev/files/pydev/Pydev%201.5.4/org.python.pydev.feature-1.5.4.2010011921 ......

ʹÓÃpdb½øÐÐpythonµÄµ÷ÊÔ

1 ÔÚÏëÒª²åÈë¶ÏµãµÄµØ·½²åÈë´úÂë
                import pdb
                pdb.set_trace()
2È»ºóʹÓÃÖ¸Áî½øÐÐdebug
²é¿´´úÂëÉÏÏÂÎÄ£¬l£¨Ð¡Ð´L£©
¼àÊÓ±äÁ¿ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ