From 95919c096ca74b6a28000193e1c502408a9f3e6c Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Sun, 22 Jan 2017 17:47:20 -0800 Subject: Issue #28556: Allow defining methods in NamedTuple class syntax (#362) --- Lib/typing.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Lib/typing.py') diff --git a/Lib/typing.py b/Lib/typing.py index eb42c19a9c..c9e3417537 100644 --- a/Lib/typing.py +++ b/Lib/typing.py @@ -2000,6 +2000,10 @@ class NamedTupleMeta(type): default_names=', '.join(defaults_dict.keys()))) nm_tpl.__new__.__defaults__ = tuple(defaults) nm_tpl._field_defaults = defaults_dict + # update from user namespace without overriding special namedtuple attributes + for key in ns: + if not hasattr(nm_tpl, key): + setattr(nm_tpl, key, ns[key]) return nm_tpl -- cgit v1.2.1