2012-04-13 6 views
1

hasattr (또는없는) 함수 또는 방법에서 attr 존재를 확인하는 방법은 무엇입니까? 나는 그것이 어떤 식 으로든 거짓입니다 확인하려고 할 때 :함수가있는 hasattr

>>> def f(): 
     at = True 


>>> hasattr(f, 'at') 
False 
>>> hasattr(f(), 'at') 
False 
+0

정보로 무엇을 할 수 있습니까? –

답변

5

지역 변수는 속성 수 없습니다. 당신은 *attr()을 사용하여 그들을 화나게 할 수 없습니다.

+0

+1. @ I159 : 만약 당신이 * 정말로 * 어떤 지역 변수가 함수를 사용하고 있는지보고 싶다면 [this code] (http://stackoverflow.com/questions/1360721/how-to-get-set-local-variables-of- a-function-from-python)이 밖에 있지만, 여러분의 유스 케이스는 무엇일까? –

0

아래 예제를 참조하십시오.

>>> def f(): 
... f.at = True 
... 
>>> hasattr(f, 'at') 
False 
>>> f() 
>>> hasattr(f, 'at') 
True 
관련 문제