Цель оператора python `with` неожиданно отсутствует.

кажется, что я чего-то не понимаю с --- python с оператором .

Рассмотрим этот класс:

class test(object):
    def __enter__(self): pass
    def __exit__(self, *ignored): pass

сейчас, при использовании его с с , как в

with test() as michael:
    print repr(michael)

, я ожидал бы какой-то результат вроде < тестовый экземпляр в памяти бла> . Но я получаю Нет .

Здесь что-то не так? Любые предложения помогут.

(Я использую Python 2.6.6.)

РЕДАКТИРОВАТЬ:

Благодаря ephement за то, что указал мне на документацию. Метод __ enter __ должен читать

    def __enter__(self): return self
13
задан Community 23 May 2017 в 11:45
поделиться