Python の iterable ってのはどのような形で実装されているのですか?

Java | C言語関連28閲覧

ベストアンサー

0

じっさいCPythonでiteratorという名前で実装されているのは __getitem__() を持っていて0から始まる整数の引数を取れる時 に作られるオブジェクトの方です。 https://github.com/python/cpython/blob/06e1701ad3956352bc0f42b8f51c2f8cc85bf378/Objects/iterobject.c __iter()__ を持っていなくて __getitem__() を持っていたらこれが作られます。 class A: □def __getitem__(self, arg): □□return "this is pseudo iterable" print(type(iter(A()))) 結果 <class 'iterator'>