СПИСКИ ТА ЦИКЛИ
Курс: Python для аналітиків з нуля
1. ЩО НАВЧИМОСЯ РОБИТИ
Задача: обробити список з 50 координат, знайти найближчу до базової точки. Навчимося працювати зі списками та циклами — ключовими інструментами для обробки даних.
2. ТЕРМІНОЛОГІЯ
3. ТЕОРІЯ
3.1 Створення списків
# Порожній список
координати = []
# Список з даними
частоти = [145.5, 433.2, 155.1, 146.0]
позивні = ["Альфа", "Браво", "Чарлі"]
# Змішані типи (не рекомендовано)
змішаний = [1, "текст", 3.14, True]3.2 Доступ до елементів
частоти = [145.5, 433.2, 155.1, 146.0]
# За індексом (нумерація з 0!)
перша = частоти[0] # 145.5
друга = частоти[1] # 433.2
остання = частоти[-1] # 146.0 (від кінця)
# Зрізи (slice)
перші_два = частоти[0:2] # [145.5, 433.2]
без_першого = частоти[1:] # [433.2, 155.1, 146.0]ВАЖЛИВО: індексація з 0! Перший елемент — [0], другий — [1].
3.3 Операції зі списками
3.4 Цикл for
# Базовий цикл
частоти = [145.5, 433.2, 155.1]
for частота in частоти:
print(f"Частота: {частота} MHz")
# З індексом
for i, частота in enumerate(частоти):
print(f"{i+1}. {частота} MHz")
# range() — послідовність чисел
for i in range(5): # 0, 1, 2, 3, 4
print(i)
for i in range(1, 6): # 1, 2, 3, 4, 5
print(i)3.5 Цикл while
# Повторювати поки умова істинна
лічильник = 0
while лічильник < 5:
print(лічильник)лічильник += 1 # збільшити на 1
# Вихід з циклу
while True:
відповідь = input("Продовжити? (y/n): ")
if відповідь == "n":break # вийти з циклу
4. КОД З КОМЕНТАРЯМИ
Знайти найближчу координату до бази:
# === ДАНІ ===
координати = [48.46, 50.45, 49.84, 48.72, 50.26]
база = 49.00
# === ПОШУК НАЙБЛИЖЧОЇ ===
найближча = координати[0]
мін_відстань = abs(координати[0] - база)
for coord in координати:
відстань = abs(coord - база)
if відстань < мін_відстань:
мін_відстань = відстань
найближча = coord
# === ВИВІД ===
print(f"Найближча координата: {найближча}")
print(f"Відстань до бази: {мін_відстань:.2f}°")Результат: Найближча координата: 49.84, Відстань: 0.84°
5. РОЗБІР ПО РЯДКАХ
координати = [48.46, 50.45, ...]Створення списку з числами (float).
найближча = координати[0]Ініціалізація: припускаємо, що перший елемент найближчий.
for coord in координати:Для кожного елемента списку: coord отримує значення по черзі.
abs(coord - база)Модуль числа — відстань без знаку.
if відстань < мін_відстань:Якщо знайшли ближчу — оновлюємо результат.
6. ЗАВДАННЯ 1: ЗНАЙТИ ПОМИЛКУ
числа = [10, 20, 30, 40]
сума = 0
for число in числа
сума = сума + число
print(сума)Відповідь
Помилка: немає двокрапки після for число in числа
for число in числа: # додати :7. ЗАВДАННЯ 2: ПРОМПТ ДЛЯ AI
Задача: є список з 100 координат. Знайти 5 найближчих до базової точки.
Напиши Python код:
8. ЗАВДАННЯ 3 (ОПЦІОНАЛЬНО)
Напишіть код: знайти всі частоти вище 150 MHz та порахувати їх кількість.
частоти = [145.5, 155.0, 433.2, 146.0, 160.5, 142.0]
# Ваш код тут9. РЕФЛЕКСІЯ
10. ЩО ДАЛІ
- Модуль 1.4: Словники — структури з ключами
- Модуль 1.5: Коли список, коли словник
Головна думка: Списки + цикли = обробка будь-якої кількості даних однаковим кодом.