__iter__
메소드의 본문은 Python의 클래스 정의에서 어떤 의미가 있습니까? __iter__
메서드는 반복자를 반환해야한다는 것을 알고 있습니다. 그렇다면 모든 __iter__
메서드는 반복자 (다른 곳에서 정의 된)를 반환하는 return 문만 포함하면 안됩니까? 어떤 경우에 __iter__
방법에 시체가있는 이유는 무엇입니까?__iter__ 메서드 본문의 요점은 무엇입니까?
1
A
답변
2
그것은 그 자체로 __iter__
방법은 반복자가 될 매우 흔한 일 - 발전기의 형태 : 물론 당신이 원하는만큼 복잡 할 수
def __iter__(self):
for datum in self.data:
yield datum + 1
.
한 줄로 끝나는 곳은 __iter__
입니다. 다른 하나의 반복 가능한 줄을 감싸고 있고 지연시키고 싶을 때가 있습니다. __getattr__
또는 __contains__
의 "지점"에 대해서도 물어볼 수 있습니다.
1
신체가 의미하는 바를 실제로 얻지 못합니다. 나는 당신이 방법 __iter__
의 정의에 대해 이야기하고 있다고 가정합니다.
가끔은 yield
을 사용하여 생성기를 반환 할 수 있습니다. 이 경우 생성 논리를 __iter__
의 본문에 쓸 수 있습니다.
또는 다른 반복기를 반환하면 일부 논리가 발생할 수 있습니다. 따라서 항상 단순히 return
이 아닙니다.
-1
는 ITER 방법은 순차적 인덱스 0에서 시작하여 인덱스가 더 이상 유효하지 않습니다 때 IndexError을 높이는를 복용, 반복자를 반환하거나 의 getItem 방법을 정의합니다.
+1
이 질문에 답하지 않고 매우 일관성이 없습니다. – Eevee
관련 문제
- 1. 인스턴스 및 메서드 숨기기 : 요점은 무엇입니까?
- 2. Python - __iter__ 구현 또는 목록의 __iter__ 반환
- 3. 웹 서비스의 요점은 무엇입니까?
- 4. 스캐 폴딩의 요점은 무엇입니까?
- 5. WCF의 요점은 무엇입니까 MaxReceivedMessageSize
- 6. MethodImplOptions.InternalCall의 요점은 무엇입니까?
- 7. make_heap의 요점은 무엇입니까?
- 8. 이 코드의 요점은 무엇입니까?
- 9. tornado.locale.Locale.translate의 요점은 무엇입니까?
- 10. Quine 프로그램의 요점은 무엇입니까?
- 11. getAttribute() 메소드의 요점은 무엇입니까
- 12. browserstack.com API의 요점은 무엇입니까?
- 13. System.IO.Error의 요점은 무엇입니까
- 14. Ingalls 테스트의 요점은 무엇입니까?
- 15. ObjectDataSource의 요점은 무엇입니까
- 16. CodeSmith에서 ParameterSchema.AllowDBNull의 요점은 무엇입니까?
- 17. Html.DisplayTextFor()의 요점은 무엇입니까?
- 18. "perl"명령의 요점은 무엇입니까?
- 19. Zend_Exception의 요점은 무엇입니까?
- 20. cataloginventory_stock_status_idx 테이블의 요점은 무엇입니까?
- 21. XPointer 범위의 요점은 무엇입니까?
- 22. VkApplicationInfo의 요점은 무엇입니까?
- 23. (? : x) 문자의 요점은 무엇입니까?
- 24. dbms_lob.createtemporary()의 요점은 무엇입니까?
- 25. 콩의 요점은 무엇입니까?
- 26. IClassFactory :: LockServer의 요점은 무엇입니까?
- 27. TableHeaderRow 클래스의 요점은 무엇입니까
- 28. os.error의 요점은 무엇입니까?
- 29. @property와 @synthesize의 요점은 무엇입니까?
- 30. D3D12의 SetGraphicsRootSignature의 요점은 무엇입니까?
리턴 할 반복자가 작성하기가 쉽지 않을 수 있습니다. –
return 문처럼 사소한 것조차도 성명서입니다. 문은 어떤 상황에서 정의되어야합니다. 메소드가 이미 모든 종류의 객체 동작에 사용되는 경우 다른 유형의 것을 고안하는 것은 이상 할 것입니다. 반복자는 완전히 다른 객체이거나 메타 프로그래밍에 사용될 수 있습니다. – tdelaney