파이썬의 객체가 모든 마법 메소드 (이중 밑줄로 둘러싸인 것, 예 : __init__
)의 기본 구현을 가지고 있다고 가정하면 정확합니까?모든 객체에 대해 모든 파이썬 매직 메소드를 사용할 수 있습니까?
2
A
답변
6
번호
>>> object.__add__
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: type object 'object' has no attribute '__add__'
그들 중 일부는 __init__
같은 기본 구현을 할 수 있지만, 대부분은 그렇지 않습니다.
-1
아니요. 모든 마법 기능의 기본 구현이 없습니다.
모든 개체가 공통 기본 기본 클래스에서 상속 된 경우에만 해당됩니다.
다른 클래스가 있으며 이러한 클래스의 다른 구현에는 다른 마법 함수가 필요합니다.
당신이 할 수있는 객체의 모든 기능을 찾으려면 클래스 이름
를 얻을 수 object.__class__
를 수행 dir(object)
+0
"모든 개체가 공통 기본 기본 클래스에서 상속 된 경우에만 해당됩니다." - 예외는 공통 기본 기본 클래스에서 상속합니다. 그 클래스는'object'입니다. – user2357112
+0
수정 해 주셔서 감사합니다! – Arovit
관련 문제
- 1. 모든 메소드를 제외하고 모든 메소드를 위임합니다.
- 2. 파이썬 스크립트에서 실행중인 모든 함수/메소드를 추적 할 수 있습니까?
- 3. 도우미 기능이 모든 파이썬 객체에 삽입 되었습니까?
- 4. 레일스 3의 모든 객체에 대해 to_xml을 재정의하십시오.
- 5. 배열의 모든 객체에 대해 하나의 속성을 출력합니다.
- 6. 모든 객체에 대해 arraylist 속성을 확인하십시오.
- 7. 다른 객체 내에서 invoke 매직 메소드를 사용할 수 없습니다.
- 8. 발견 된 모든 문서에 대해 메소드를 실행하십시오.
- 9. 어떻게 모든 setInterval()에 대해 ClearInterval()을 사용할 수 있습니까?
- 10. 모든 활동에 대해 하나의 GestureDetector를 사용할 수 있습니까?
- 11. DOM 요소의 모든 변경 사항에 대해 디버거를 사용할 수 있습니까?
- 12. 모든 영어권 문화에 대해 단일 리소스 파일을 사용할 수 있습니까?
- 13. C++ 클래스의 함수에는 모든 객체에 대해 하나의 복사본 만 있습니까?
- 14. PHP4의 __call() 매직 메소드를 에뮬레이트하는 방법이 있습니까?
- 15. 모든 유형의 프로젝트에 Subversion을 사용할 수 있습니까?
- 16. 모든 플랫폼에서 TcpClient를 사용할 수 있습니까?
- 17. JSON 문자열의 모든 객체에 프로토 타입 추가
- 18. 파이썬 : 모든 예외에 대해 무언가 수행
- 19. 모든 메소드를 정적으로 만들기
- 20. 모든 객체에 AS3 dispatchEvent
- 21. 모든 응용 프로그램에서 모든 레이아웃에 대한 활동을 사용할 수 있습니까?
- 22. RSpec이 객체의 모든 메소드를 조롱합니다.
- 23. dict 객체에 대해 jinja의 "last"필터를 사용할 수 있습니까?
- 24. 매직 방법은 파이썬
- 25. 모든 메소드를 'this'에 바인드
- 26. 루프를 사용하여 모든 유형의 클래스 메소드를 수행 할 수 있습니까?
- 27. HttpContext.Current.Cache를 모든 세션에서 사용할 수 있습니까?
- 28. 갈퀴 작업을 모든 곳에서 사용할 수 있습니까?
- 29. 모든 ccTalk 라이브러리를 사용할 수 있습니까?
- 30. 모든 안드로이드 폰은 GPS를 사용할 수 있습니까?
그래서이 방법 "마법"을 만드는가? –
@wobbily_col : 일반적으로 특수 메소드는 Python이 언어 기능을 구현하는 데 사용하는 메소드입니다. 예를 들어, 반복을 위해서는'__iter__', 추가는'__add__', 객체 초기화를 위해서는'__init__'가 있습니다. 기본 구현을 갖는 것은 아무 관계가 없습니다. – user2357112