コンテキストマネージャを介して取得する3つのオブジェクト、たとえばAロック、db接続、およびipソケットがあるとします。次の方法で取得できます。
with lock:
with db_con:
with socket:
#do stuff
しかし、1つのブロックでそれを行う方法はありますか?何かのようなもの
with lock,db_con,socket:
#do stuff
さらに、コンテキストマネージャーを持つオブジェクトの長さが不明な配列が与えられた場合、どういうわけか次のことを行うことができますか?
a=[lock1, lock2, lock3, db_con1, socket, db_con2]
with a as res:
#now all objects in array are acquired
答えが「いいえ」の場合、そのような機能の必要性は悪いデザインを意味するのでしょうか、それとも私はそれを一言で提案する必要がありますか?:-P