diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/basics/namedtuple1.py | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/basics/namedtuple1.py b/tests/basics/namedtuple1.py new file mode 100644 index 0000000000..331c7dec1f --- /dev/null +++ b/tests/basics/namedtuple1.py @@ -0,0 +1,40 @@ +from collections import namedtuple + +T = namedtuple("Tup", "foo bar") +# CPython prints fully qualified name, what we don't bother to do so far +#print(T) +t = T(1, 2) +print(t) +print(t.foo, t.bar) + +print(isinstance(t, tuple)) + +try: + t[0] = 200 +except TypeError: + print("TypeError") +try: + t.bar = 200 +except AttributeError: + print("AttribiteError") + +try: + t = T(1) +except TypeError: + print("TypeError") + +try: + t = T(1, 2, 3) +except TypeError: + print("TypeError") + +# Try comma field separator +T2 = namedtuple("TupComma", "foo,bar") +t = T2(1, 2) +print(t) +print(t.foo, t.bar) + +# Try list of fields +# Not implemented so far +#T3 = namedtuple("TupComma", ["foo", "bar"]) +#t = T3(1, 2) |