Python: Урок 12. Цикл for
У сьомому уроці було розглянуто цикл while. Однак це не єдиний спосіб організації у мові Python повторення групи виразів. У програмах, написаних на Python, широко застосовується цикл for, який являє собою цикл обходу заданої множини елементів (символів рядка, об'єктів списку або словника) та виконання в своєму тілі різних операцій над ними. Наприклад, якщо є список чисел, і необхідно збільшити значення кожного елемента на дві одиниці, то можна перебрати список за допомогою циклу for, виконавши над кожним його елементом відповідну дію.
З таким само успіхом перебирати можна й рядки, якщо не намагатися їх при цьому змінювати:
Цикл for використовується і для роботи зі словниками:
Змініть попередню програму так, щоб в кінці кожної букви рядка додавалося тире. (Підказка: цикл for може бути вкладений в інший цикл.)
Створіть список, що містить елементи цілочисельного типу, потім за допомогою циклу перебору змініть тип даних елементів на числа з плаваючою крапкою. (Підказка: використовуйте вбудовану функцію float ().)
Приклад виконання практичної роботи
Урок 1. Історія мов програмування. Компіляція та інтерпретація
Урок 2. Знайомство з Python і середовищами програмування
Урок 3. Типи даних в програмуванні. Визначення змінної
Урок 4. Логічні вирази
Урок 5. Умовний оператор. Інструкція if
Урок 6. Множинне розгалуження
Урок 7. Цикл while
Урок 8. Введення даних з клавіатури
Урок 9. Рядки як послідовності символів
Урок 10. Списки - змінювані послідовності
Урок 11. Cловники
Урок 12. Цикл for
Урок 13. Функції
Урок 14. Параметри і аргументи функцій. Локальні та глобальні змінні
Урок 15. Перевірочна робота з основ програмування на Python
>>> spysok = [0,10,20,30,40,50,60,70,80,90] >>> i = 0 >>> for element in spysok: spysok[i] = element+2 i = i + 1 >>> spysok [2, 12, 22, 32, 42, 52, 62, 72, 82, 92]У прикладі змінна i потрібна для того, щоб записати змінене значення елемента в список. У ній зберігається значення індексу чергового елемента списку. У той час, як змінна element пов'язується зі значенням чергового елемента даних. У заголовку циклу for відбувається звернення до чергового елементу списку. У тілі циклу елементу з індексом i присвоюється сума значення поточного (оброблюваного) елемента і двійки. Далі індекс збільшується на одиницю, а потік виконання програми переходить знову в заголовок циклу for, де відбувається звернення до іншого елементу списку. Коли всі елементи оброблені цикл for припиняє свою роботу. Відсутність чергового елемента є умовою завершення роботи циклу for (для порівняння: в циклі while умовою завершення служить результат False логічного виразу в заголовку).
З таким само успіхом перебирати можна й рядки, якщо не намагатися їх при цьому змінювати:
>>> radok = "привіт" >>> for bukva in radok: print (bukva, end = '*') п * р * и * в * і * т *Примітка: у вищевказаному прикладі функція print() має також аргумент end — він вказує, яким символом має закінчуватись поточне виведення на екран. Якщо в функції print() не вказаний даний аргумент то виведення закінчується символом переходу на нову стрічку (\n). Спробуйте змінити вищевказаний приклад, написавши, наприклад, print(bukva, '*'), або print(bukva+' *') і ви побачите, як зміниться результат.
Цикл for використовується і для роботи зі словниками:
>>> d = {1:'one',2:'two',3:'three',4:'four'} >>> for key in d: d[key] = d[key] + '!' >>> d {1: 'one!', 2: 'two!', 3: 'three!', 4: 'four!'}Цикл for широко використовується в мові програмування Python, тому що є важливим інструментом при обробці структур даних. Також слід запам'ятати, що цикл for в Python особливий. Він не є аналогом циклів for в багатьох інших мовах програмування, де представляє собою, так званий, цикл з лічильником.
Практична робота
Створіть список, що складається з чотирьох рядків. Потім, за допомогою циклу for, виведіть рядки по черзі на екран.Змініть попередню програму так, щоб в кінці кожної букви рядка додавалося тире. (Підказка: цикл for може бути вкладений в інший цикл.)
Створіть список, що містить елементи цілочисельного типу, потім за допомогою циклу перебору змініть тип даних елементів на числа з плаваючою крапкою. (Підказка: використовуйте вбудовану функцію float ().)
Приклад виконання практичної роботи
>>> # Завдання 1 >>> list1 = ['hi','hello','good morning','how do you do'] >>> for i in list1: print(i) hi hello good morning how do you do >>> # Завдання 2 >>> for i in list1: for j in i: print(j, end='.') print() h.i. h.e.l.l.o. g.o.o.d. .m.o.r.n.i.n.g. h.o.w. .d.o. .y.o.u. .d.o. >>> # Завдання 3 >>> list2 = [56,78,45,23] >>> i = 0 >>> for a in list2: list2[i] = float(a) i = i + 1 >>> list2 [56.0, 78.0, 45.0, 23.0]
Зміст курсу
ВступУрок 1. Історія мов програмування. Компіляція та інтерпретація
Урок 2. Знайомство з Python і середовищами програмування
Урок 3. Типи даних в програмуванні. Визначення змінної
Урок 4. Логічні вирази
Урок 5. Умовний оператор. Інструкція if
Урок 6. Множинне розгалуження
Урок 7. Цикл while
Урок 8. Введення даних з клавіатури
Урок 9. Рядки як послідовності символів
Урок 10. Списки - змінювані послідовності
Урок 11. Cловники
Урок 12. Цикл for
Урок 13. Функції
Урок 14. Параметри і аргументи функцій. Локальні та глобальні змінні
Урок 15. Перевірочна робота з основ програмування на Python
Коментарі