<jupyter_start><jupyter_text>Цикли в пайтоні* **for** створений для того щоб переглянути всі елементи в списку , масиві* **while** виконується поки є якась умова![title](images/loops_logo.jpg)  Цикл For<jupyter_code># Ініціалізація списку
marks = [10,11,12,8,9,7]
# Цикл for
# for змінна in список:
    # команда           ОБОВ'ЯЗКОВО РОБИТИ ВІДСТУП
for i in marks:
    print(i)
# від 0 до 10
for i  in range(10):
   print(i, i*i, i*i*i)
# Припустимо нам потрібні числа від 5 до 10
for i in range(5,10):
    print(i)<jupyter_output>5
6
7
8
9<jupyter_text>* Виберемо зі списку всі імена , в яких більше 5 букв<jupyter_code>names = ["Kevin","Lukas","Taras","Michael","Chloe","Eugene"]
for name in names:
    if(len(name) > 5):
        print(name)
    else:
        print("Name: ",name," has less than 5 letters")<jupyter_output>Name:  Kevin  has less than 5 letters
Name:  Lukas  has less than 5 letters
Name:  Taras  has less than 5 letters
Michael
Name:  Chloe  has less than 5 letters
Eugene<jupyter_text>Згадаємо як ми рахували суму чисел в C sharp<jupyter_code>numbers = [1,2,3,4,5,6,7,8,9,10]
summa = 0
for i in numbers:
    summa += i
print(summa)<jupyter_output>55<jupyter_text>Пайтон може швидше?<jupyter_code>sum(numbers)<jupyter_output><empty_output><jupyter_text>Цикл While<jupyter_code># Візьмемо вже знайомий нам список чисел
numbers
# Потестуємо While на простій програмці поки перше число в списку не буде більше за останнє
# будемо збільшувати його на 1 на кожному кроці
while numbers[0] < numbers[-1]:
    numbers[0] += 1
    print(numbers[0])<jupyter_output>2
3
4
5
6
7
8
9
10<jupyter_text>Порахуємо кількість парних і непарних чисел двома способами* Циклом **for*** Циклом **while**<jupyter_code># знак рівності == поверне нам bool значення тобто true або false
parni = 0
neparni = 0
for i in numbers:
    if(i%2==0):
        parni += 1
    else:
        neparni += 1
print("Парних: ",parni," Непарних: ", neparni)
# Потрібно якось пройтись по елементах введемо своє i яке будемо збільшувати
while(i < len(numbers)): 
    if numbers[i] % 2 == 0: 
        parni += 1
    else: 
        neparni += 1 
    i += 1 # збільшуємо i
print("Парних: ",parni," Непарних: ", neparni)<jupyter_output>Парних:  6  Непарних:  4<jupyter_text>Приклади continue і break Цикл **while** використовується для повторного виконання інструкції до тих пір, поки умова істинна. На відміну від **for** , **while** не пов'язаний з якою-небудь послідовністю. Ось простий приклад, щоб роздрукувати всі парні числа, менші 100. У цьому прикладі ми встановлюємо лічильник i. Тоді ми встановлюємо в циклі while умову виконання i <= 100, наш код виконується поки результат умови істинний (true). Потім перевіряємо нашу змінну на парність, виконуючи ділення по модулю. В кінці нам потрібно вручну збільшити наш лічильникi = i + 1. Таким чином в кожній ітерації значення i буде збільшуватися на 1.<jupyter_code>i = 0
while i <= 100:
    if i % 2 == 0:
        print(i)
    i = i + 1 # або i += 1<jupyter_output>0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
34
36
38
40
42
44
46
48
50
52
54
56
58
60
62
64
66
68
70
72
74
76
78
80
82
84
86
88
90
92
94
96
98
100<jupyter_text>Continue в циклах Іноді ви хочете перейти до наступної ітерації без виконання деякого коду. Continue можна використовувати, як в for, так і в while. Ми можемо переписати попередній приклад з використанням continue: Цей приклад робить те ж саме, за винятком того, що ми використовуємо for і range. Range дає нам ряд чисел від 0 до 100. Замість друку парних чисел ми переходимо до наступної ітерації, якщо це непарне число. **Continue** означає, що код нижче нього не буде виконуватися, а замість цього ми перейдемо до наступної ітерації циклу.<jupyter_code>for item in range(100):
        if not item % 2 == 0: # Якщо непарне то пропустити крок
            continue # пропуск
        print(item) # вивід наступного парного<jupyter_output>0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
34
36
38
40
42
44
46
48
50
52
54
56
58
60
62
64
66
68
70
72
74
76
78
80
82
84
86
88
90
92
94
96
98<jupyter_text>Break<jupyter_code># Приклад брейку
for val in "string":
    if val == "i":
        break
    print(val)

print("The end")<jupyter_output>s
t
r
The end
{'fraction_non_alphanumeric': 0.08597285067873303, 'fraction_numerical': 0.06977851869492736, 'mean_word_length': 3.952830188679245, 'pattern_counts': {'":': 2, '<': 33, '<?xml version=': 0, '>': 30, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '9', 'dir': 'jupyter-structured-clean-dedup', 'id': '539451', 'license': 'MIT', 'n_tokens_mistral': 1999, 'n_tokens_neox': 2131, 'n_words': 589, 'path': 'Python introduction/for_and_while_guide.ipynb', 'repo_name': 'YuriiKoteyka/Machine-Learning', 'size': '4199'}