在3.5.1版本中,`namedtuple`有什么变化吗?
- 论坛
- 在3.5.1版本中,`namedtuple`有什么变化吗?
9 浏览
在3.5.1版本中,`namedtuple`有什么变化吗?
在Python 3.5.0上:
from collections import namedtuple cluster = namedtuple('Cluster', ['a', 'b']) c = cluster(a=4, b=9) c Cluster(a=4, b=9) vars(c) OrderedDict([('a', 4), ('b', 9)])
在Python 3.5.1上:
from collections import namedtuple cluster = namedtuple('Cluster', ['a', 'b']) c = cluster(a=4, b=9) c Cluster(a=4, b=9) vars(c) Traceback (most recent call last): File "", line 1, in TypeError: vars()的参数必须具有__dict__属性
看起来好像是`namedtuple`有所改变(或者可能是`vars()`有所改变?)。
这是有意的吗?我们不再应该使用这种模式将命名元组转换为字典了吗?