Вопросы с тегом «with-statement»

10
Для чего предназначен оператор python «with»?
withСегодня я впервые столкнулся с заявлением Python . Я слегка использовал Python в течение нескольких месяцев и даже не знал о его существовании! Учитывая его немного неясный статус, я подумал, что стоит спросить: Для чего withпредназначен оператор Python ? Для чего ты это используешь? Есть ли какие-то ошибки, о которых …

6
Несколько переменных в операторе «с»?
Можно ли объявить более одной переменной с помощью withоператора в Python? Что-то вроде: 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) ... или проблема очистки двух ресурсов одновременно?

30
Существуют ли законные варианты использования оператора «with» в JavaScript?
Комментарии Алана Шторма в ответ на мой ответ относительно withзаявления заставили меня задуматься. Я редко находил причину использовать эту особенность языка и никогда не задумывался над тем, как это может вызвать проблемы. Теперь мне интересно, как я мог бы эффективно использовать ее with, избегая при этом ее ловушек. Где вы …

6
Объяснение Python '__enter__' и '__exit__'
Я видел это в чьем-то коде. Что это значит? 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
Использование оператора python with с блоком try-except
Это правильный способ использования оператора python "with" в сочетании с блоком try-except ?: try: with open("file", "r") as f: line = f.readline() except IOError: <whatever> Если это так, то при старом способе работы: try: f = open("file", "r") line = f.readline() except IOError: <whatever> finally: f.close() Является ли здесь основное …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.