Почему foo = filter (…) возвращает <объект фильтра>, а не список? [Дубликат]

На этот вопрос уже есть ответ здесь:

Фильтры в Python3 [дубликаты] 2 ответа

Работа в оболочке Python IDLE 3.5.0. Из моего понимания встроенной функции «фильтра» он возвращает список, кортеж или строку, в зависимости от того, что вы передаете в нее. Итак, почему первое задание ниже работает, а не второе («>>>» - это просто интерактивные подсказки Python)

>>> def greetings():
    return "hello"

>>> hesaid = greetings()
>>> print(hesaid)
hello
>>> 
>>> shesaid = filter(greetings(), ["hello", "goodbye"])
>>> print(shesaid)
<filter object at 0x02B8E410>

Ответы на вопрос(5)

Ваш ответ на вопрос