Может ли Pythonic использовать понимание списков только для побочных эффектов?

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

def fun_with_side_effects(x):
    ...side effects...
    return y

Теперь Pythonic , чтобы использовать понимание списка для вызова этой функции:

[fun_with_side_effects(x) for x in y if (...conditions...)]

Обратите внимание, что я нигде не сохраняю список

Или мне следует называть эту функцию вот так:

for x in y:
    if (...conditions...):
        fun_with_side_effects(x)

Что лучше и почему?

97
задан Bhargav Rao 15 November 2016 в 10:16
поделиться