Генераторы словарей и модули Рython
Функции в языке Python Функции в языке PythonВсе функции в языке Python возвращают какое-либо значение, хотя вполне возможно (и часто так и делается) просто игнорировать это значение. Возвращаемое значение может быть единственным значением или кортежем значений,...
Реализация генераторов Реализация генераторовМы рассмотрели коллекции-последовательности, tuple, collections, na-medtuple и list, поддерживающие, как и строки, возможность извлечения срезов. Также было рассмотрено использование оператора распаковывания...
Парсинг документов XML Парсинг документов XMLXML: Для парсинга документов XML широко используются два основных подхода. Один из них основан на анализе DOM (Document Object Model -объектная модель документа), а другой - на использовании SAX (Simple API for XML - упрощенный...
Копирование коллекций Копирование коллекцийКопирование коллекций: Поскольку в языке Python повсюду используются ссылки на объекты, когда выполняется оператор присваивания (=), никакого копирования данных на самом деле не происходит. Если справа от оператора находится литерал,...
Циклы for
Циклы for: В качестве выражения expression обычно используется либо единственная переменная, либо последовательность переменных, как правило, в форме кортежа. Если в качестве выражения expression используется кортеж или список, каждый элемент итерируемого объекта iterable распаковывается в элементы expression. Если внутри блока for_suite встретится инструкция continue, управление будет немедленно передано в начало цикла и будет начата новая итерация.

Если цикл завершается по выполнении всех итераций и в цикле присутствует предложение else, выполняется блок else_suite. Если выполнение цикла прерывается принудительно (инструкцией break или return), управление немедленно передается первой инструкции, следующей за циклом, а дополнительное предложение else при этом пропускается. Точно так же, когда возбуждается исключение, интерпретатор Python пропускает предложение else и пытается отыскать подходящий обработчик исключения (о чем будет рассказываться в следующем разделе).

Как видно из этого фрагмента, переменные, созданные в выражении expression цикла for ... in, продолжают существовать после завершения цикла. Как и любые локальные переменные, они прекращают свое существование после выхода из области видимости, включающей их. Обработка исключений. Об ошибках и исключительных ситуациях интерпретатор Python сообщает посредством возбуждения исключений, хотя в некоторых библиотеках сторонних разработчиков еще используются устаревшие приемы, такие как возврат "ошибочного" значения.

Перехват и возбуждение исключений: Эта конструкция должна содержать хотя бы один блок except, а блоки else и finally являются необязательными. Блок else_suite выполняется, только если блок try_suite завершается обычным способом, и не выполняется в случае возникновения исключения. Если блок finally присутствует, он выполняется всегда и в последнюю очередь. Каждая группа exception_group в предложении except может быть единственным исключением или кортежем исключений в круглых скобках.

Часть as variable в каждой группе является необязательной. В случае ее использования в переменную variable записывается ссылка на исключение, которое возникло, благодаря этому к нему можно будет обратиться в блоке except_suite. Если исключение возникнет во время выполнения блока try_suite, интерпретатор поочередно проверит каждое предложение except. Если будет найдена соответствующая группа exception_group, будет выполнен соответствующий блок except_suite.

Соответствующей считается группа, в которой присутствует исключение того же типа, что и возникшее исключение, или возникшее исключение является подклассом1 одного из исключений, перечисленных в группе. Например, если при поиске по словарю возникнет исключение КеуЕг-гог, первое предложение except, содержащее класс Exception, будет считаться соответствующим, так как КеуЕггог является (косвенно) подклассом Exception. В языке Python родоначальником любой иерархии является класс object - все остальные классы прямо или косвенно наследуют его.
Навигация: 1 2 3 4
 
 
© Copyright