Интересно, как правильно использовать функции обратного вызова python 2.7.Как использовать функцию обратного вызова в python?
У меня есть некоторые функции обратного вызова из примеров Cherrypy auth в моем коде.
(Эти обратные вызовы возвращают функцию, которая может оценить Истина или Ложь, в зависимости от зарегистрированного пользователя, находясь в группе или нет.)
Интересно, если обратный вызов выполняется или нет, если я пишу кусок кода, как это:
Учитывая определение из библиотеки:
def member_of(groupname):
def check():
if groupname == 'admin':
if cherrypy.request.login == 'joe':
return True
if cherrypy.request.login == 'toni':
return True
return False
return False
# .... (other groups checked in the same way)
return check # returns a callback function from my understanding?
Как можно применить и выполнить обратный вызов в моем коде?
Если бы это так:
if member_of('admin'):
do_something()
else:
do_something_else()
Будет ли это выполнить calllback и проверить для группы администратора? Или выяснит, является ли значение «member_of» определением функции, а определение функции, вероятно, всегда является «истинным» значением (или, возможно, значением False), но оба они ошибочны, поскольку их необходимо выполнить.
Можете ли вы просветить меня по этому поводу? Как я могу убедиться, что обратный вызов выполнен? Как я могу передать его так, как есть?
Пытался выполнить? – specialscope