私はPythonを学んでいて、with **** as ****:ステートメントを試しています。C# と同じように機能すると思いusing(****) {ますが、古い例に従っているのではないかと思います。
これは私のコードです:
# -*- coding: iso-8859-1 -*-
import pprint
pow = 1, 2, 3
with pprint.pprint as pprint:
pprint(pow)
ここで起こっていることはpprint、私の小さなクロージャーが関数のエイリアスであると仮定していpprint.pprintます。ただし、奇妙なエラーが発生します。
Traceback (most recent call last):
File "test.py", line 7, in <module>
with pprint.pprint as pprint:
AttributeError: __exit__
だから今、私は以前と同じように古いバージョンの Python の構文を使用していると考えています ( print "Hello")
コードが期待どおりに機能しないのはなぜですか?