Страницы

понедельник, 14 марта 2011 г.

Python Альтернативные ветки программы # 12

Оператор условия if имеет расширенный формат, позволяющий проверять несколько независимых друг от друга условий и выполнять один из блоков, поставленных в соответствие с этими условиями. Синтаксис оператора выглядит так:

if условие_1:
    программа_1
 
elif условие_2:
    программа_2
 
elif условие_3:
    программа_3
...
else:
    программа если условия не удовлетворяются




Работает эта конструкция следующим образом. Сначала проверяется первое условие и, если оно истинно, то выполняется первая последовательность выражения (программа_1). После  того поток выполнения переходит строке, которая следует после условного оператора . Если  первое условие не удовлетворено, то проверяется второе условие (следующее после elif), и в случае его истинности выполняется последовательность 2, а затем снова поток выполнения переходит к строке, следующей за оператором условия.

Аналогично проверяются все остальные условия. До ветки программы else поток выполнения доходит только в том случае, если не выполняется ни одно из условий. Условие, которое следует после слова elif проверяется только тогда, когда все предыдущие условия ложны.

Пример:

#!/usr/bin/env python 
# -*- coding: utf-8 -*- 
 
def p1(): 
 a=raw_input('Введите число ') 
 if a == '1':
  print 'a=1' 
 elif a == '2':
  print 'a=2' 
 
 else:
  print '1<a>2' 
  
def main(): 
 p1() 
 return 0 
 
if __name__ == '__main__':
 main() 


Сначала программа просит пользователя ввести число, затем условный оператор проверяет введенное значение на равенство со строкой '1' (если не помните, функция raw_input() возвращает строковое значение).

Если условие истинно, то на экране распечатывается текст который мы зададим и завершается; в противном случае значение переменной а сравнивается со строкой '2': если условие  выполняется, то на экране распечатывается уже другой текст; иначе – программа выводит сообщение о том, что введенное или меньше одного, или больше двух. 

Комментариев нет:

Отправить комментарий