Тема :
Одномерный массив
Цель обучения:
9.3.3.1 создавать программы на языке программирования Python (пайтон) с использованием одномерных массивов
Вы узнаете:
- что такое одномерный массив;
- какие бывают операторы для работы с одномерными массивами на языке программирования Python.
Вы научитесь:
- описывать одномерные массивы на языке программирования Python;
- организовывать ввод и вывод элементов одномерного массива;
- создавать программы на языке программирования Python с использованием одномерных массивов.
Критерии оценивания
Знание
- Дает определение понятию массив (список)
Понимание
- Определяет элементы массива
Применение
- Разрабатывает программный код на языке Python c использованием одномерного массива
Вспомним, что мы изучили по разделу программирование в предыдущих классах
Python
Простой, гибкий и невероятно популярный язык, который используется практически во всех областях современной разработки.
С его помощью можно создавать веб-приложения, игры, заниматься анализом данных, автоматизировать задачи системного администрирования и многое другое
Задание 1
Определите значение выражения в языке Python
7//3+7%3
- 4
- 2
- 3
- Вернет ошибку
Задание 2
Какую функцию нужно использовать, чтобы текст появился на экране
____________________(“Hi”)
- input
- output
- write
5: print(“пять”) If A8: print(“восемь”) Ответ: пять" width="640"
Задание 3
Каким будет результат выполнения программы?
A=7
If A5:
print(“пять”)
If A8:
print(“восемь”)
Ответ: пять
Задание 4
Каким будет результат выполнения программы?
If 1+1==2:
if 2*2==8:
print(“if”)
else:
print(“else”)
- if
- else
- If else
=0: print(i) i – =1 Ответ: 4" width="640"
Задание 5
Сколько чисел выведет эта программа?
i=3
While i=0:
print(i)
i – =1
Ответ: 4
Задание 6
Сколько чисел выведет эта программа и какое будет последнее выведенное число?
j=10
for I in range (j):
print(i)
Ответ: программа выведет 10 чисел
Последнее число 9
Списки и массивы
- Базовым типом структуры данных в Python является список . В других языках программирования такой структурой является массив .
- В Python для работы с массивом подключают модуль array , но чаще всего используют список .
- Отличие списков от массивов заключается в функциях, которые можно выполнять с ними.
- Список более широкое понятие. В массиве все элементы имеют одинаковый тип, а в списке типы элементов могут быть различными.
- Список более широкое понятие.
- В массиве все элементы имеют одинаковый тип, а в списке типы элементов могут быть различными.
Основные понятия
- Список – набор элементов произвольного типа.
- Массив – набор данных одного типа, записанных под определенным именем.
- Длина ( размер ) массива – количество элементов в массиве.
- Одномерный массив – массив, в котором для задания элемента требуется один индекс.
- Имя - название массива
- Индекс - номер элемента в массиве
- Элемент - каждое значение в массиве
В Python нумерация элементов начинается с 0. Индекс элемента указывается в квадратных скобках.
Пример массива Num из десяти целых чисел: 45, 78, 3, 9, 23, -12, 67, -15, 7, 54.
Обращение к элементу массива
НОМЕР элемента массива
(ИНДЕКС)
A
массив
2
0
1
2
3
4
15
5
10
15
20
25
ЗНАЧЕНИЕ элемента массива
A[0]
A[1]
A[2]
A[3]
A[4]
Индекс элемента — это значение, которое указывает на конкретный элемент массива.
!
Нумерация с нуля!
Определите элементы массива
0
1
2
3
4
5
10
15
20
25
А
A[2]
A[1]
A[3]
A[4]
A[0]
А
Имя ( название массива) –
Индекс ( номера элемента массива) -
Элемент массива –
Значение элемента массива ( каждое значение в массиве)-
Размер ( количество элементов в массиве) -
0,1,2, 3, 4
А[0], A[1], A[2], A[3], A[4]
5, 10, 15, 20, 25
5
При объявлении массива указывается имя массива и тип его элементов. Размер массива не задается, он может быть расширен новыми элементами любое время. Для использования массива в Рython понадобится импортирование стандартного модуля array .
import array as arr a = arr.array('i')
где arr – название, которое мы задаем сами для дальнейшего использования модуля array
a – имя массива (в данном случае); i – тип элементов массива (integer)
Нам нужен массив, состоящий из 7 элементов.
#объявляем массив А с указанием типа элементов - целые
import array as arr
A=arr.array('i')
#заполняем массив
for i in range (0,7):
A.append(i)
Для ввода и вывода значения элементов массива используется цикл с параметром
#объявляем массив А с указанием типа элементов - целые
import array as arr
A=arr.array('i')
#заполняем массив
for i in range (0,7):
A.append(i)
#выводим массив
for i in range (0,7):
print(A[i])
Создание массивов (списков) в программе
- 1-й способ . Чтобы задать массив (список) в программе, можно указать его имя и в квадратных скобках через запятую перечислить элементы. Значения строковых элементов записываются в апострофах.
Создание массивов (списков) в программе
- 2-й способ. Можно описать пустой список и с помощью цикла организовать ввод элементов с клавиатуры.
Организуется ввод пяти элементов. Параметр цикла i определяет индекс элемента. Функция range(5) позволяет задать значения параметра от 0 до 4.
Создание массивов (списков) в программе
- 3-й способ. Заполнение массива по определенному правилу. В данном случае можно использовать генератор списка.
Пример 1. Массив a из пяти элементов заполнить десятками
a = [10]*5
Результат: a = [10, 10, 10, 10, 10]
Создание массивов (списков) в программе
- 3-й способ. Заполнение массива по определенному правилу. В данном случае можно использовать генератор списка.
Пример 2. Формирование массива b из чисел от 0 до 9.
b = [i for i in range(10)]
Результат: b = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Создание массивов (списков) в программе
Пример 3. Формирование массива из строки.
str = [str *2 for str in 'plan’] Результат: str = ['pp', 'll', 'aa', 'nn‘’]
Пример 4. Заполнение случайными числами.
from random import randint
c = [randint (10,20) for x in range(5)]
Результат: массив содержит пять случайных чисел из диапазона от 10 до 20.
Пример 5. Изменение значений отдельных элементов
Результат: Num = [98, 78, 3, 9, 23, -12, 67, -8, 7, 54]
Пример 6. Вывод отдельных элементов
Результат: 3 -12
Для вывода всех элементов используется цикл с параметром:
Работа с массивами
- Как напечатать все элементы массива А длиной N?
for i in range(N):
print( А[i] )
Вывод массива на экран
Весь массив сразу:
[1,2,3,4,5]
print ( A )
По одному элементу:
for i in range (N):
print ( A[i] )
в столбик
или так:
для всех элементов в массиве A
for x in A:
print ( x )
?
for x in A:
print ( x, end= " " )
Как вывести в строчку?
пробел между элементами
32
Ввод с клавиатуры
for i in range (N):
A[i] = int ( input ())
?
Что плохо?
или так:
A = [ int ( input ())
for i in range (N)]
С подсказкой для ввода:
A[0] =
A[1] =
A[2] =
A[3] =
A[4] =
5
12
34
56
13
for i in range (N):
s = "A[" + str (i) + "]="
A[i] = int ( input (s))
Работа с массивами
- Как заполнить массив К длины N числами 0,1,2…?
for i in range(N):
К[i] = i
33
Массивы в Python: списки
A = [1, 3] + [4, 23] + [5]
Результат: [1, 3, 4, 23, 5]
?
A = [0]*10
Что будет?
Результат: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
A = list (range(10))
Результат: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
35
Количество элементов можно определить с помощью функции len().
Для добавления в конец нового элемента применяется метод append().
Пример 7. Дан список цветов. Добавить в конце красный цвет. Вывести на экран список.
35
Списки можно соединять (конкатенировать) с помощью знака «+».
Результат: m=['a', 10, 'b', 2.5,'number', 65]
35
В списке можно повторить элементы
Результат: a=[0, 1, 2, 0, 1, 2, 0, 1, 2]
35
Генераторы списков
A =[ i for i in range(10) ]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
?
Что будет?
A =[ i*i for i in range(10) ]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
from random import randint
A = [ randint(20,100)
for x in range(10)]
случайные числа
randint(20,100)
A = [ i for i in range(100)
if isPrime(i) ]
if isPrime(i)
условие отбора
Заполнение случайными числами
from random import randint
N = 10
A = [0]*N
for i in range(N):
A[i] = randint(20,100)
или так:
случайные числа
[20,100]
from random import randint
N = 10
A = [ randint(20,100)
for x in range(N)]
39
Размер массива можно узнать, используя функцию len()
C=[13,3,7,-5,53]*3
print(C)
print(len(C))
Рефлексия урока
- Чему я научился?
- Что я могу делать лучше?
- Какой этап урока был самым полезным? Почему?
39


Одномерный массив в Python 