31得票1回答
子类化集合命名元组

Python的命名元组(namedtuple)可以作为一个轻量级、不可变的数据类,非常有用。我喜欢将它们用于记录参数而不是使用字典。当需要一些更多的功能时,比如简单的docstring或默认值,你可以很容易地将namedtuple重构为类(class)。然而,我见过一些继承自命名元组的类。它们...

26得票2回答
如何从命名元组实例列表创建带索引或多级索引的 pandas DataFrame?

简单示例: from collections import namedtuple import pandas Price = namedtuple('Price', 'ticker date price') a = Price('GE', '2010-01-01', 30.00) b = ...

25得票4回答
为什么namedtuple模块不使用元类来创建nt类对象?

几周前,我花了些时间研究了collections.namedtuple模块。该模块使用一个工厂函数,将动态数据(新的namedtuple类的名称和类属性名称)填充到一个非常大的字符串中。然后使用exec执行该字符串(表示代码的参数),并返回新的类。 有没有人知道为什么这样做,当有一个特定的工具...

25得票4回答
如何向命名元组中添加字段?

我正在使用一个命名元组列表。我想在创建之后为每个命名元组添加一个字段。似乎可以通过将其作为属性引用(例如namedtuple.attribute = 'foo')来实现,但是它不会被添加到字段列表中。如果我不对字段列表做任何事情,是否有任何理由不这样做?有更好的方法来添加字段吗?>&gt...

22得票1回答
namedtuple的第一个参数用于什么?

我们可以像这样使用namedtuple:>>> from collections import namedtuple >>> Point = namedtuple('Point', ['x', 'y']) >>> p=Point(1,2) ...

22得票2回答
Python语法中如何在一个命名元组内部定义另一个命名元组

是否可以在另一个namedtuple中使用namedtuple? 例如:from collections import namedtuple Position = namedtuple('Position', 'x y') Token = namedtuple('Token', ['key...

22得票1回答
TypeScript中的“命名或标记元组”是什么?

阅读Typescript 4.0中的更改时,我发现了新功能: 元组的命名元素 我认为元素既可以通过数字索引(如元组和列表)访问,也可以通过键(如字典)访问。但我没想到它们可以同时通过两种方式进行索引。 我的问题是: 为什么/何时应该使用命名元组而不是普通元组?

22得票1回答
理解JSONEncoder的子类化

我正在尝试对json.JSONEncoder进行子类化,以便将命名元组(使用新的Python 3.6+语法定义,但它可能仍适用于collections.namedtuple的输出)序列化为JSON对象,其中元组字段对应于对象键。例如:from typing import NamedTuple ...

21得票2回答
通过子类化修改命名元组的构造函数参数?

我想创建一个namedtuple,用来表示短位域中的各个标志。我试图对其进行子类化,以便在创建元组之前解包位域。但是,我的当前尝试不起作用:class Status(collections.namedtuple("Status", "started checking start_after_c...

19得票2回答
“namedtuple”在内存使用上是否真的和元组一样高效?我的测试结果是否。

据Python文档中所述,`namedtuple`的优点之一是它和元组一样节省内存。为了验证这一点,我使用了带有ipython_memory_usage的iPython。测试结果如下图所示: 测试结果显示: 10000000 个 `namedtuple` 实例占用了约 850 M...