3
특정 기능에서 호출 할 수있는 함수를 제한하는 방법이 있습니까? 당신이 그렇게 할 거라면특정 함수에 의해 호출되는 함수를 제한하는 방법이 있습니까?
def a():
private() # okay
def b():
private() # raises error
def private():
print "private"
특정 기능에서 호출 할 수있는 함수를 제한하는 방법이 있습니까? 당신이 그렇게 할 거라면특정 함수에 의해 호출되는 함수를 제한하는 방법이 있습니까?
def a():
private() # okay
def b():
private() # raises error
def private():
print "private"
import inspect
def private():
cframe = inspect.currentframe()
func = inspect.getframeinfo(cframe.f_back).function
if func != 'a':
print 'not allowed from ', func
print "private"
, 왜 당신은'A' 내부에 직접 private''의 코드를 삽입하지? – BrenBarn
끔찍한 체조 검사가 없습니다. 왜 이걸 원하니? 왜 전화를 걸 필요가있는 곳에서 전화를 걸면 안되지? –
내 코드에서 함수는 객체 메서드이며 별도로있을 때 더 체계적이며 def c()가 private()을 호출 할 수도 있습니다. – Derek