diff --git a/py/objnamedtuple.c b/py/objnamedtuple.c index 76dc9a1fc9855d7c94804e7ae43dfc076e1bf389..38cda1ad7528833ff082f7ea89c59dd133f6d0fd 100644 --- a/py/objnamedtuple.c +++ b/py/objnamedtuple.c @@ -165,10 +165,7 @@ STATIC mp_obj_t new_namedtuple_type(mp_obj_t name_in, mp_obj_t fields_in) { fields_in = mp_obj_str_split(1, &fields_in); } #endif - if (!MP_OBJ_IS_TYPE(fields_in, &mp_type_list)) { - nlr_raise(mp_obj_new_exception_msg(&mp_type_TypeError, "list required")); - } - mp_obj_list_get(fields_in, &n_fields, &fields); + mp_obj_get_array(fields_in, &n_fields, &fields); return mp_obj_new_namedtuple_type(name, n_fields, fields); } MP_DEFINE_CONST_FUN_OBJ_2(mp_namedtuple_obj, new_namedtuple_type); diff --git a/tests/basics/namedtuple1.py b/tests/basics/namedtuple1.py index dfbb79f2ebe273c5db25a1283c8167689904f51d..346e32fbfced082c77ef94d0e882ab00e16238cb 100644 --- a/tests/basics/namedtuple1.py +++ b/tests/basics/namedtuple1.py @@ -66,6 +66,11 @@ T3 = namedtuple("TupComma", "foo bar") t = T3(1, 2) print(t.foo, t.bar) +# Try tuple +T4 = namedtuple("TupTuple", ("foo", "bar")) +t = T4(1, 2) +print(t.foo, t.bar) + # Try single string with comma field seperator # Not implemented so far #T2 = namedtuple("TupComma", "foo,bar")