使用列表理解一次定义两个对象

时间:2019-06-04 16:32:12

标签: python

我有一组字典list_dic,每个字典包含键id;name。从这些键中,我想创建两个列表。

例如,我想使用列表理解功能

list_id = [a['id'] for a in list_dic]
list_name = [a['name'] for a in list_dic]

这里的问题是我要循环两次,这可能不是一件明智的事情。

有没有办法只使用一次列表理解循环?

# Pseudo
list_id, list_name  = [a['id'], a['name'] for a in list_dic]

PS

我尝试了helper = [[a['id'], a['name']] for a in list_dic]几乎可以正常工作。问题是子集似乎需要再次循环(我希望像helper[:][0]这样的东西可以提供全部ids)。

1 个答案:

答案 0 :(得分:2)

使用protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity<Stuff>().HasKey(a => a.Id); modelBuilder.Entity<Stuff>().HasOne(a => a.OldThing); modelBuilder.Entity<Stuff>() .Property(s => s.OldThingId) .IsRequired(); }

zip