Skip to content

Instantly share code, notes, and snippets.

@banyan
Created February 13, 2010 12:56
Show Gist options
  • Select an option

  • Save banyan/303430 to your computer and use it in GitHub Desktop.

Select an option

Save banyan/303430 to your computer and use it in GitHub Desktop.
class Klass(object):
def __init__(self):
self.name = 'tanaka'
def decorator(original_func):
def func(*args):
return original_func() + self.name
return func
@decorator
def decorated_func():
return [1, 2]
# => NameError: global name 'self' is not defined
# self.name は参照できない。
class Klass(object):
def __init__(self):
self.name = 'tanaka'
def decorator(original_func):
def func(*args):
return original_func() + [args[0].name]
return func
@decorator
def decorated_func():
return [1, 2]
# => [1, 2, 'tanaka']
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment