Функциональный способ вставки элементов в список - PullRequest
0 голосов
/ 04 июля 2018

В Python обычно аккуратно писать [f(i) for i in range(n)]. Интересно, есть ли способ сделать что-то вроде [A.append(f(i)) for i in range(n)] или [A.insert(g(i),f(i)) for i in range(n)].

1 Ответ

0 голосов
/ 04 июля 2018

Писать [A.append(f(i)) for i in range(n)] действительно не элегантно, так как это может сбить с толку читателей тем, что вы пытаетесь сделать.

[A.append(f(i)) for i in range(n)] лучше записать как

A.extend([f(i) for i in range(10)])

И [A.insert(g(i),f(i)) for i in range(n)] будет выглядеть лучше и понятнее, когда написано как

for i in range(n):
    A.insert(g(i),f(i))
...