Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 30, 2017 09:16:16

Seyran
Зарегистрирован: 2017-06-19
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Массив ссылок на функции

Добрый день всем! В Питоне не давно, но уже очень нравиться ))
Вот возник вопрос по странному поведению массива ссылок на функции. Есть следующий код для примера:

 def ss():
    print("ss")
    
def ff():
    print("ff")
    
dd = [ff(), ss(), ff(), ff(), ss(), ff(), ss()]
for d in dd:
    print(d)

вывод в консоль у него следующий:
 ff
ss
ff
ff
ss
ff
ss
None
None
None
None
None
None
None

Вопрос! Откуда в массиве взялись None в количестве всегда равном количеству ссылок?

Офлайн

#2 Июнь 30, 2017 09:26:17

krok64
Зарегистрирован: 2017-04-04
Сообщения: 75
Репутация: +  11  -
Профиль   Отправить e-mail  

Массив ссылок на функции

Seyran
 dd = [ff(), ss(), ff(), ff(), ss(), ff(), ss()]
вот тут печатается
ff
ss
ff
ff
ss
ff
ss
Seyran
for d in dd:
print(d)
а вот тут печатаются результаты вызовов этих функций, т.е. None

dd у тебя не массив сcылок на функции, а список результатов вызовов этих функций, т.е. список из 7 None

Отредактировано krok64 (Июнь 30, 2017 09:30:33)

Офлайн

#3 Июнь 30, 2017 09:32:37

Seyran
Зарегистрирован: 2017-06-19
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Массив ссылок на функции

понятно, мог и сам догадаться )) Спасибо огромное за ответ.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version