copyerfiled
@copyerfiled

Можно ли перебрать функции в цикле?

def blablabla():
    if abc1() >2:
        return True
    if zxc2() >2:
        return True    
    ... и тд.


Есть 100500 функций, возможно то же реализовать в цикле?

Вот пример:
def abc1():
    print('один')
    return 1

def zxc2():
    print('два')
    return 2

def ffn3():
    print('три')
    return 3

superlist = [
    abc1(),
    zxc2(),
    ffn3(),
    ]

for i in superlist:

    if i > 2:
        print(i, 'нашли')
        break
    print(i, 'перебираем')
else:
        print('Ничего не найдено')


один
два
три
1 перебираем
2 перебираем
3 нашли

Все функции разом отработали в момент инициализации списка, а нужно, чтобы они поочередно вызывались в цикле с условием. Бывает такая магия?
  • Вопрос задан
  • 211 просмотров
Решения вопроса 3
Djaler
@Djaler
Сеньор-помидор
superlist = [
    abc1,
    zxc2,
    ffn3,
    ]
for function in superlist:
  if function() > 2:
    и так далее
Ответ написан
dimonchik2013
@dimonchik2013
non progredi est regredi
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы