在python的一行中编写循环表达式,但结果不应为列表

时间:2019-04-08 14:56:31

标签: python lambda

我想要一个容易获得的循环中的ID,但问题是我想在一行中应用循环。我已经尝试过使用列表理解功能,但是我不希望将结果作为列表类型。

我在此对象中有ID:

location(282, 285, 284, 283)

我可以通过简单地应用循环来获取它们:

for i in location:
    print(i.id)

它将给我这个结果:

282
285
284
283

我得到了这种类型的结果,这是我真正想要的。

[x for x in location]

这给了我结果列表

[282,285,284,283]

但是我不想要这个。

我想要这种形式的结果,但是循环应该在python中一行编写。

282
285
284
283

1 个答案:

答案 0 :(得分:0)

要将项目输入Set,您可能需要这样的东西:

Class<Set<String>>

或者您仍然可以使用自己不想要的(Class<Set<?>>)(Class<?>)Set.class

dict