假设我有一个像
这样的名字>>> Point = namedtuple('Point','x y')
为什么我通过
构建单个对象>>> Point(3,4)
但是当我想通过地图应用Point时,我必须调用
>>> map(Point._make,[(3,4),(5,6)])
我怀疑这可能与类方法有关,我希望在解决这个问题时我也会更多地了解它们。提前谢谢。
答案 0 :(得分:7)
Point._make
以元组为唯一参数。您的map
来电相当于[Point._make((3, 4)), Point._make((5, 6))]
。
使用列表推导使这更加明显:[Point(*t) for t in [(3, 4), (5, 6)]]
达到了同样的效果。