Как бы была версия этого кода без понимания списка? - PullRequest
0 голосов
/ 07 июня 2019

Я новичок в Python и выясняю способы узнать гайки и болты.

не могу представить версию этого утверждения, не включающую в себя список

[(u, v) for u, v, d in T.edges(data=True) if d['date'] < date(2010, 1, 1)]

то, что я зналманипулировал выходным выражением, но здесь выходное выражение, вероятно, генерируется только тогда, когда итерация удовлетворяет определенному условию.Пожалуйста, уточните

1 Ответ

2 голосов
/ 07 июня 2019

Общая идея с пониманием списка состоит в том, что:

[result for elements in iterable if condition]

переводится в:

ret = []
for elements in iterable:
    if condition:
        ret.append(result)

Например:

[x for x in range(10,20) if x%3 == 0]
# => [12, 15, 18]

Работает точно так жепуть как:

ret=[]
for x in range(10,20):
    if x%3 == 0:
        ret.append(x)

ret # => [12, 15, 18]
...