Список понимания из нескольких источников в Python? - PullRequest
0 голосов
/ 05 мая 2010

Можно ли заменить следующее на понимание списка?

res = []
for a, _, c in myList:
    for i in c:
        res.append((a, i))

Например:

# Input
myList = [("Foo", None, [1, 2, 3]), ("Bar", None, ["i", "j"])]

# Output
res = [("Foo", 1), ("Foo", 2), ("Foo", 3), ("Bar", "i"), ("Bar", "j")]

1 Ответ

7 голосов
/ 05 мая 2010
>>> [(i, j) for i, _, k in myList for j in k]
[('Foo', 1), ('Foo', 2), ('Foo', 3), ('Bar', 'i'), ('Bar', 'j')]
...