Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KL-LAB2(9).doc
Скачиваний:
23
Добавлен:
12.02.2016
Размер:
914 Кб
Скачать
☆

1.1.2 Засоби здійснення простого керування.

Більшість мов програмування дозволяють виконання окремих блоків програми, коли використовуються умовні вирази або if оператори. В наступній програмі ми створили змінну word, яка містить значення ‘cat’ типу стрічка. If- оператор перевіряє умову чи довжина слова <5, чи ні. Якщо умова виразу справджується, то виконується тіло if оператора і виконується оператор print .

Якщо змінити умови виразу (довжина слова більша або рівна 5), вираз не справджується і оператор print не виконується.

If оператор, - це керуюча (управляюча) структура, тому що вона керує виконанням програми, вона вибирає, яка частина коду в програмі буде виконуватися. Іншою контрольную структурою є for оператор циклу. В наступному прикладі ми бачимо його використання:

>>> for word in ['Call', 'me', 'Ishmael', '.']:

... print word

...

Call

me

Ishmael

.

>>>

Стрічка з операторами If та For повинна завершуватися двокрапкою.

1.1.3.Організація циклів з умовними виразами.

При написанні програм можна поєднувати оператори if та for. В наступному прикладі в циклі обробляються всі елементи списка і друкуються тільки ті, які мають останню літеру l:

>>> sent1 = ['Call', 'me', 'Ishmael', '.']

>>> for xyzzy in sent1:

... if xyzzy.endswith('l'):

... print xyzzy

...

Call

Ishmael

>>>

Якщо потрібно, щоб щось відбувалося, коли умовний вираз не справджується, використовується оператор else в If – твердженні.

Наступний приклад містить ще складнішу комбінацію з операторів If, else, elif.

>>> for token in sent1:

... if token.islower():

... print token, 'is a lowercase word'

... elif token.istitle():

... print token, 'is a titlecase word'

... else:

... print token, 'is punctuation'

...

Call is a titlecase word

me is a lowercase word

Ishmael is a titlecase word

. is punctuation

>>>

Якщо залишити частину умов if твердження пустою, то не пуста стрічка або список буде оброблятися як true а пуста стрічка чи список, як false.

В даному прикладі if твердження тотожне до if len(element) > 0

Для встановлення відмінності в використанні if...elif роглянемо наступний приклад:

У випадку, коли if. вираз твердження задовольняється, elif вираз не виконується і програма ніколи не виведе на екран 2. elif вираз надає більше інформації ніж if вираз. Якщо elif вираз справджується то це означає, що не тільки одна умова справджується але і означає, що умова if виразу не справдилася.

1.1.4 Ітерації і If твердження.

Нехай маємо стрічку і необхідно написати програму, яка виведе на екран всі слова, які мають закінчення «ow». Програма буде складатися з наступних частин. Спочатку розділимо стрічку на список слів.

Тепер потрібно послідовно перебрати всі слова у списку . Напишемо такий цикл , за допомогою якого виводимо на екран всі слова .

Далі треба вивести на екран тільки необхідні нам слова із закінченням «ow». Попередньо можна перевірити, які саме слова необхідно вивести на екран.

Тепер все готове для написання If твердження у For циклі.

На завершення розглянемо наступний приклад:

>>> tricky = sorted([w for w in set(text2) if 'cie' in w or 'cei' in w])

>>> for word in tricky:

... print word,

ancient ceiling conceit conceited conceive conscience

conscientious conscientiously deceitful deceive ...

>>>

Спочатку був створений список куди увійшли слова з буквосполученнями «cie» та «cei».Елементи цього списку оброблялися в циклі і роздруковувалися. Зауважимо, що кома в кінці оператора print вказує на те щоб результати виводилися в стрічку.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]