«with-statement» etiketlenmiş sorular

10
Python "with" ifadesi ne için tasarlanmıştır?
withBugün ilk kez Python bildirisiyle karşılaştım. Python'u birkaç aydır hafifçe kullanıyorum ve varlığını bile bilmiyordum! Biraz belirsiz durumu göz önüne alındığında, sormaya değer olacağını düşündüm: Python withifadesi ne için kullanılmak üzere tasarlanmıştır? Ne için kullanıyorsun? Dikkat etmem gereken herhangi bir gotcha veya kullanımı ile ilişkili yaygın anti-kalıplar var mı? Daha …

6
'With' ifadesinde birden çok değişken mi var?
withPython'da bir ifade kullanarak birden fazla değişken bildirmek mümkün mü ? Gibi bir şey: from __future__ import with_statement with open("out.txt","wt"), open("in.txt") as file_out, file_in: for line in file_in: file_out.write(line) ... ya da aynı anda iki kaynağı temizlemek sorun mu?

30
JavaScript'in “with” ifadesinin meşru kullanımları var mı?
Alan Storm'un withifadeyle ilgili cevabımın cevabı hakkındaki yorumları beni düşündürdü. Bu özel dil özelliğini kullanmak için nadiren bir neden buldum ve nasıl sorun yaratabileceği hakkında çok fazla düşünmemiştim. Şimdi, withtuzaklarından kaçarken nasıl etkili bir şekilde kullanabileceğimi merak ediyorum . İfadeyi nerede withfaydalı buldunuz?

6
Python'un '__enter__' ve '__exit__'lerini açıklama
Bunu birinin kodunda gördüm. Bunun anlamı ne? def __enter__(self): return self def __exit__(self, type, value, tb): self.stream.close() from __future__ import with_statement#for python2.5 class a(object): def __enter__(self): print 'sss' return 'sss111' def __exit__(self ,type, value, traceback): print 'ok' return False with a() as s: print s print s



4
Try-exclude bloğu ile python "with" ifadesini kullanma
Python "with" ifadesini bir try-exclude bloğu ile birlikte kullanmanın doğru yolu bu mu ?: try: with open("file", "r") as f: line = f.readline() except IOError: <whatever> Eğer öyleyse, bir şeyleri yapmanın eski yöntemini düşünün: try: f = open("file", "r") line = f.readline() except IOError: <whatever> finally: f.close() Buradaki "ile" ifadesinin …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.