1 of 35

Поняття одновимірного масиву

За навчальною програмою 2017 року

Урок 47

Інформатика 9

teach-inf.com.ua

за підручником

Бондаренко О.О. та ін.

2 of 35

Повторюємо

У 5–8 класах ви опанували основи мови програмування Python.

Знаєте, як реалізувати базові алгоритмічні структури, і вмієте створювати програми з використанням розгалужень і повторень.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

3 of 35

Повторюємо

Ви розширили уявлення про типи величин і алгоритми опрацювання даних різних типів та розробляли програми з графічним інтерфейсом користувача, створюючи об’єкти класів графічних компонентів.

Ви також навчилися задавати властивості найуживаніших віджетів та програмувати обробку подій для цих об’єктів.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

4 of 35

Повторюємо

Ви оволоділи прийомами роботи в інтегрованому середовищі розробки PyCharm, знайомі з можливостями інтелектуального введення та автодоповнення коду, засобами для аналізу коду тощо.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

5 of 35

Запитання

  1. Назвіть основні характеристики величини.
  1. Що визначає тип величини?
  1. З якими типами даних ви працювали?
  1. Наведіть приклади величин простих типів.
  1. Як можна змінити значення величини?
  1. Які базові алгоритмічні структури використовуються для конструювання алгоритмів?

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

6 of 35

Поняття одновимірного масиву. Списки

Ви вже стикались із необхідністю зберігання наборів значень, об’єднаних за певною ознакою.

Наприклад, у комп’ютерній грі можуть зберігатися

  • координати персонажів на екрані,
  • таблиці рекордів,
  • ведення рахунку тощо.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

7 of 35

Поняття одновимірного масиву. Списки

В обчислювальних програмах виникає потреба зберігати набори чисел:

  • значення середньодобових температур за тиждень,
  • відстаней між об’єктами,
  • кількісних показників певного процесу тощо.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

8 of 35

Поняття одновимірного масиву. Списки

Як вам вже відомо, для збереження сукупностей даних у програмуванні існують структуровані типи, або контейнери. Контейнер можна порівняти з картотекою — він зберігає набір значень у певному порядку.

Складені або структуровані типи — це типи даних, які мають внутрішню структуру та можуть бути сконструйовані з простих типів даних. Змінна або константа структурованого типу має декілька компонент, об’єднаних спільним ім’ям.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

9 of 35

Створення списку

Значення списку вкладаються у квадратні дужки [ ] та відокремлюються одне від одного за допомогою коми. Наприклад:

Список (list) — це упорядкований набір об’єктів різних типів (чисел, рядків, списків тощо), який можна змінювати.

[ ]

У мові Python списки використовуються для зберігання масивів даних.

a = [1, -2, 3.3, 'text']

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

10 of 35

Створення списку

Одновимірний масив — це пронумерована послідовність значень одного типу, що мають спільне ім’я.

Хоча Python дозволяє зберігати у списку елементи різних типів, наша мета — навчитися опрацьовувати масиви даних, тобто сукупності однотипних значень, об’єднаних за певною ознакою.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

11 of 35

Створення списку

Створити порожній список можна двома способами:

list(): а = list()

за допомогою функції

а = [ ]

використовуючи квадратні дужки

ПРИКЛАД 1. Створити об’єкт animal типу список і надати йому значення:

animal = ["Кіт", "Собака", "Миша", "Хом’як"]

0

1

2

3

Список animal

"Кіт"

"Собака"

"Миша"

"Хом’як"

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

12 of 35

Створення списку

ПРИКЛАД 2.

Визначити, чи є в списку letters елемент 'a':

if 'a' in letters:

print('так')

else:

print("символу 'a' в списку немає")

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

13 of 35

Створення списку

Додати елемент до списку можна так:

за допомогою методу append()

за допомогою операції об’єднання

Додати до списку a = [2, 6,4] елемент 10:

Заповнити список числами від 0 до 4:

>>> а.append(10)

>>> print(а)

[2, 6, 4, 10]

>>> a = []

>>> for i in range(5):

a = a+[i]

>>> a

[0, 1, 2, 3, 4]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

14 of 35

Створення списку

ПРИКЛАД 3. Створення списку з 5 цілих чисел, що вводяться з клавіатури.

a = []

for i in range(5):

n = int(input(str(i)+'? '))

a.append(n)

print(a)

0? 3

1? 5

2? 2

3? 15

4? 90

[3, 5, 2, 15, 90]

Програмний код

Результат виконання

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

15 of 35

Створення списку

ПРИКЛАД 4. Заповнення списку 5 випадковими числами.

from random import*

a = []

for i in range(5):

a = a+[randint(1, 10)]

print(a)

Програмний код

Результат роботи програми може бути таким:

[9, 1, 6, 3, 8]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

16 of 35

Генератори списків

Синтаксис генератора списків:

Генератор списків — це синтаксична конструкція, що призначена для створення списків і заповнення їх значеннями за певними правилами.

list_variable = [<вираз> for x in iterable]

Конструкція береться у квадратні дужки, що означає, що результатом роботи генератора є список.

значення, які вибираються з послідовності iterable

вираз, що обчислюється для кожного значення х і використовується як елемент списку list_variable

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

17 of 35

Генератори списків

ПРИКЛАД 5. Створити список з перших 10 натуральних чисел.

>>> a = [i for i in range(1, 11)]

>>> a

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

18 of 35

Генератори списків

ПРИКЛАД 6. Створити список а з квадратів елементів списку b.

>>> b = [2, –2, 4, –4, 7, 5]

>>> а = [i**2 for i in b]

>>> b

[4, 4, 16, 16, 49, 25]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

19 of 35

Генератори списків

ПРИКЛАД 7. Створити список а з перших літер елементів списку аnimal.

>>> animal = ["Кіт", "Собака", "Миша", "Хом’як"]

>>> а = [x[0] for x in animal]

>>> а

['К', 'С', 'М', 'Х']

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

20 of 35

Доступ до елементів списку

Доступ до елемента списку можна отримати за його індексом (номером у списку). Нумерація елементів починається з нуля.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

21 of 35

Доступ до елементів списку

Над списками можна виконувати прості дії:

  • об’єднання,
  • дублювання списків,
  • отримання фрагменту списку,
  • визначення кількості елементів списку,
  • додавання до списку нового елемента.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

22 of 35

Доступ до елементів списку

Об’єднання (конкатенація) списків задається операндом «+». Особливості застосування цієї операції подано на прикладах у таблиці:

Фрагмент програми

Результат

[1, 2, 3, 4, 5, 6]

[4, 5, 6, 1, 2, 3]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

23 of 35

Доступ до елементів списку

(Продовження…) Об’єднання (конкатенація) списків:

Фрагмент програми

Результат

[1, 2, 3, 4]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

24 of 35

Доступ до елементів списку

Дублювання списку задають операндом «*» за правилами, які описано на прикладах таблиці:

Фрагмент програми

Результат

[1, 2, 3, 1, 2, 3, 1, 2, 3]

[]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

25 of 35

Доступ до елементів списку

(Продовження…) Дублювання списку:

Фрагмент програми

Результат

[]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

26 of 35

Доступ до елементів списку

Фрагмент списку має назву зріз. Щоб отримати потрібний фрагмент, вказують початковий і кінцевий індекс елемента за правилами, подібними до утворення зрізів у рядках:

Фрагмент програми

Результат

[2, 3]

[1, 2, 3]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

27 of 35

Доступ до елементів списку

(Продовження…) Зріз списку:

Фрагмент програми

Результат

[4, 5, 6]

[4, 5, 6]

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

28 of 35

Доступ до елементів списку

Для визначення кількості елементів списку використовують функцію len().

ПРИКЛАД 8. Дано список а = [2, 15, 3, –5, 10]. Проаналізуємо результати виконання в консолі дій зі списком.

len(а)

Вивести елемент списку з індексом 3

а[3]

5

-5

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

29 of 35

Доступ до елементів списку

Елементи списку можна змінювати. Для цього слід звернутись до індексу списку та за адресою цього індекса надати нове значення:

['a', 'b', 'f', 'd']

Результат:

List = [ ]

0

1

2

3

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

30 of 35

Доступ до елементів списку

ПРИКЛАД 9. Замінити нулями перші 3 елементи списку а:

a = [2, 15, 3, -5, 10]

a[0: 3] = [0]*3

print(a)

[0, 0, 0, –5, 10]

Отже, списки є гнучким і потужним інструментом для збереження сукупностей даних у певному порядку.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

31 of 35

Питання для самоперевірки

  1. Обговоріть спільні ознаки та відмінності між рядками та списками.
  1. Збережіть імена кількох своїх друзів у списку з ім’ям names. Виведіть ім’я кожного друга, звернувшись до кожного елемента списку.
  1. За допомогою генератора списків заповніть список квадратами перших 10 натуральних чисел.
  1. За допомогою генератора списків заповніть список а непарними числами в діапазоні від�1 до 20.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

32 of 35

Розгадайте ребус

«Ребуси українською» © rebus1.com

Масив

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

33 of 35

Домашнє завдання

Проаналізувати

§ 29, с. 174-180

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

34 of 35

Працюємо за комп’ютером

Сторінка

179-180

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 29

35 of 35

Дякую за увагу!

За навчальною програмою 2017 року

Урок 47

Інформатика 9

teach-inf.com.ua

за підручником

Бондаренко О.О. та ін.