From bb91f1195aec8eaca6d8f528118496cff71a101b Mon Sep 17 00:00:00 2001 From: Damien George Date: Tue, 12 Aug 2014 19:41:18 +0100 Subject: py: Improve range: add len, subscr, proper print. Can now index ranges with integers and slices, and reverse ranges (although reversing is not very efficient). Not sure how useful this stuff is, but gets us closer to having all of Python's builtins. --- tests/basics/builtin_range.py | 26 ++++++++++++++++++++++++++ tests/basics/builtin_reversed.py | 4 ++-- 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 tests/basics/builtin_range.py (limited to 'tests') diff --git a/tests/basics/builtin_range.py b/tests/basics/builtin_range.py new file mode 100644 index 000000000..0c0110c26 --- /dev/null +++ b/tests/basics/builtin_range.py @@ -0,0 +1,26 @@ +# test builtin range type + +# print +print(range(4)) + +# len +print(len(range(0))) +print(len(range(4))) +print(len(range(1, 4))) +print(len(range(1, 4, 2))) +print(len(range(1, 4, -1))) +print(len(range(4, 1, -1))) +print(len(range(4, 1, -2))) + +# subscr +print(range(4)[0]) +print(range(4)[1]) +print(range(4)[-1]) + +# slice +print(range(4)[0:]) +print(range(4)[1:]) +print(range(4)[1:2]) +print(range(4)[1:3]) +print(range(4)[1::2]) +print(range(4)[1:-2:2]) diff --git a/tests/basics/builtin_reversed.py b/tests/basics/builtin_reversed.py index c834cba69..58631d544 100644 --- a/tests/basics/builtin_reversed.py +++ b/tests/basics/builtin_reversed.py @@ -18,8 +18,8 @@ for b in reversed(b'1234'): print(b) # range -#for i in reversed(range(3)): -# print(i) +for i in reversed(range(3)): + print(i) # user object class A: -- cgit v1.2.3