저는 객체를 인수로 취하는 hasattr
메소드를보고있었습니다.hasattr이 함수에 속성이 있는지 확인합니다.
"모든 것이 대상입니다"이론을 확인하십시오. 나는 속성이 "name"
인 사용자 정의 함수를 만들었지 만 False
을 반환합니다. 내가 작성한 코드는 다음과 같습니다.
def trial():
name = "james"
hasattr(trial, "name")
즉, 함수가 객체가 아니라는 의미입니까? 누군가가 우리가 이것을 이해하도록 도울 수 있다면 고맙겠습니다.
이 함수는 객체이지만'name'은 속성이 아닙니다. 'name'은'trial()'함수가 실행될 때 생성되는 변수입니다. 함수는 객체이며 속성을 가지고 있지만 로컬 변수는 속성이 아닙니다. – khelwood
예를 들어, 함수 정의와 검사 사이에'trial.name = 'James''를 추가하면 그것이 사실임을 알 수 있습니다. – jonrsharpe
'name'속성을 가진 함수가 없습니다. –