次のforループを書くためのより良い方法はありますか?
my_list = []
for key in my_set_of_keys:
for val1,val2 in my_dict[key]:
my_list.append((key,val2,val1))
私の試みはおそらく...少しとりとめのない...
my_list = list(chain.from_iterable(map(
lambda key: [(key,val2,val1) for (val1,val2) in my_dict[key]],
my_set_of_keys)))
my_list = reduce(lambda x,y: x+y,(map(
lambda key: [(key,val2,val1) for (val1,val2) in my_dict[key]],
my_set_of_keys)))
my_list = reduce(list.__add__, (map(
lambda key: [(key,val2,val1) for (val1,val2) in my_dict[key]],
my_set_of_keys)))
my_dictは次のようになります。
'keyA' : { ('foo',1), ('bar',2), ('baz',3) }
'keyB' : { ... }
my_set_of_keys:
{ 'keyA', 'keyC', ... }