summaryrefslogtreecommitdiffstatshomepage
path: root/tests/basics/iter2.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/basics/iter2.py')
-rw-r--r--tests/basics/iter2.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/basics/iter2.py b/tests/basics/iter2.py
new file mode 100644
index 0000000000..763f59cb6f
--- /dev/null
+++ b/tests/basics/iter2.py
@@ -0,0 +1,23 @@
+# user defined iterator used in something other than a for loop
+
+class MyStopIteration(StopIteration):
+ pass
+
+class myiter:
+ def __init__(self, i):
+ self.i = i
+
+ def __iter__(self):
+ return self
+
+ def __next__(self):
+ if self.i == 0:
+ raise StopIteration
+ elif self.i == 1:
+ raise StopIteration(1)
+ elif self.i == 2:
+ raise MyStopIteration
+
+print(list(myiter(0)))
+print(list(myiter(1)))
+print(list(myiter(2)))