我有一个对象列表。对象具有3个字符串属性。我想制作一个仅包含类中特定属性的列表。
有内置的功能可以做到这一点吗?
列表理解会很好地工作:
[o.my_attr for o in my_list]
但是,由于您要求:-),所以有内置功能的组合。
from operator import attrgetter
map(attrgetter('my_attr'), my_list)
问题内容: 我在python中有一个 统一 的对象列表: 现在,我想提取一个具有该类某些属性的列表(比如attr),以便将其传递给某个函数(例如用于绘制该数据) pythonic的做法是什么, ? 也许派生列表并添加一个方法,所以我可以使用一些习惯用法,例如 ? 问题答案: 您还可以编写: 这样,您将获得一个节省内存的生成器。有关更多好处,请参见Generator Expressions 。
问题内容: 当存在时,是否有可能获得全部列表?是否为此准备了电话,还是我必须编写一个foreach循环,如: 问题答案: Java 8及更高版本: 如果需要确保得到结果,则必须将最后一行更改为: Java 7及以下版本: Java 8之前的标准集合API不支持这种转换。您必须编写一个循环(或将其包装在您自己的“地图”函数中),除非您使用一些更高级的集合API /扩展。 (您的Java代码段中的行正
问题内容: 如何最好地获得以下结构的所有“名称”字符串元素: 我的方法是: 这可能有效,但是Java中没有任何内容。在这里我只可以写这样的: ? 问题答案: 使用Java 8:
我有一个对象列表(文件夹)。该列表中的每个对象A都有一个对象B(合作伙伴)列表,对象B也有一个对象C(人员)列表。对象C包含一个属性代码,我想用它来使用Java8进行过滤。 我试过下面的代码,但它似乎不工作: 你们知道我如何使用FlatMap从
问题内容: 说我有一个对象列表,其中包含两个字段和,均为String类型。 如果有可能,如何在不迭代列表的情况下获取所有值的列表? 问题答案: 对象是对内存地址的引用。然后,该对象的字段是指向其他内存地址的其他引用。因此,对象列表是引用列表。因此,列表不可能直接访问对象字段(由引用给出的引用)。最简洁的答案是不。 注意:无论如何,您都会找到可以实现所需功能的API,但该API仍在内部循环。
我正在尝试过滤scala中对象列表的列表属性。例如: 用java定义的类 我的过滤器函数返回字符串列表而不是结果列表 UPDATE我想取回listOf中的所有结果,其中每个结果的名称属性被过滤。