diff options
author | Raymond Hettinger <python@rcn.com> | 2014-06-24 13:44:39 -0700 |
---|---|---|
committer | Raymond Hettinger <python@rcn.com> | 2014-06-24 13:44:39 -0700 |
commit | 21468dfa4d79632696a0128f7e3218d8e10528e9 (patch) | |
tree | d3391b99aad20ada09334c60c80d1703be9f1452 | |
parent | c03dc0f164d468f87509675c727ac6e6322264c7 (diff) | |
parent | 7c59613a75a40553ae364504877eabfef694f5a0 (diff) | |
download | cpython-git-21468dfa4d79632696a0128f7e3218d8e10528e9.tar.gz |
merge
-rw-r--r-- | Lib/collections/__init__.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Lib/collections/__init__.py b/Lib/collections/__init__.py index a55fee1ff4..1f41ff951a 100644 --- a/Lib/collections/__init__.py +++ b/Lib/collections/__init__.py @@ -352,6 +352,7 @@ def namedtuple(typename, field_names, verbose=False, rename=False): if isinstance(field_names, str): field_names = field_names.replace(',', ' ').split() field_names = list(map(str, field_names)) + typename = str(typename) if rename: seen = set() for index, name in enumerate(field_names): @@ -362,6 +363,8 @@ def namedtuple(typename, field_names, verbose=False, rename=False): field_names[index] = '_%d' % index seen.add(name) for name in [typename] + field_names: + if type(name) != str: + raise TypeError('Type names and field names must be strings') if not name.isidentifier(): raise ValueError('Type names and field names must be valid ' 'identifiers: %r' % name) |