Pythonã§ãƒ—ãƒã‚°ãƒ©ãƒ を書ã„ã¦ã„ã‚‹ã¨ã€ã‚ˆã関数ã®ä¸ã§é–¢æ•°ã‚’作るã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ Python ã¯ã‚¯ãƒãƒ¼ã‚¸ãƒ£ã«å¯¾å¿œã—ã¦ã„ã¦ã€é–¢æ•°ã®ä¸ã§ä½œã‚‰ã‚ŒãŸé–¢æ•°ã¯ã€å¤–å´ã®é–¢æ•°ã®ãƒãƒ¼ã‚«ãƒ«å¤‰æ•°ã‚’å‚ç…§ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ クãƒãƒ¼ã‚¸ãƒ£ãŒä¸€ç•ªå½¹ã«ç«‹ã¤å ´é¢ãŒãƒ‡ã‚³ãƒ¬ãƒ¼ã‚¿ã§ã™ã€‚次ã®ä¾‹ã§ã¯ã€å¼•æ•°ã‚’å–るデコレータを作るãŸã‚ã«é–¢æ•°å†…関数を2段階作æˆã—ã€ãã‚Œãžã‚Œã®ãƒãƒ¼ã‚«ãƒ«å¤‰æ•°ã‚’一番内å´ã‹ã‚‰å‚ç…§ã—ã¦ã„ã¾ã™ï¼ˆã“ã®ãƒ—ãƒã‚°ãƒ©ãƒ ã¯ã€Python 2.6ã¨Python 3.0ã®ä¸¡æ–¹ã§å‹•ãã¾ã™â )â 。 リスト1 # coding: utf-8 from __future__ import print_function import sys def log(out=sys.stderr): def decorator(func): name = func.__name__ def decorated(*args, **kwargs): ###
{{#tags}}- {{label}}
{{/tags}}