Değişkenleri satırlara böldüğünüzde, yeni satırları kaydırmak için ters eğik çizgiler kullanmanız gerektiğini unutmayın.
with A() as a, \
B() as b, \
C() as c:
doSomething(a,b,c)
Parantezler işe yaramaz, çünkü Python bunun yerine bir demet oluşturur.
with (A(),
B(),
C()):
doSomething(a,b,c)
Tuples bir __enter__
özniteliğe sahip olmadığından bir hata alırsınız (açıklayıcı değildir ve sınıf türünü tanımlamaz):
AttributeError: __enter__
as
Parantez içinde kullanmaya çalışırsanız , Python hatayı ayrıştırma zamanında yakalar:
with (A() as a,
B() as b,
C() as c):
doSomething(a,b,c)
Sözdizimi Hatası: geçersiz sözdizimi
https://bugs.python.org/issue12782 bu sorunla ilgili gibi görünüyor.