6 месяцев назад
Программирование на языке Python. Библиотека numpy, продолжение, операции над массивами
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Продолжение статей по numpy Продолжаем изучать возможности библиотеки numpy Продолжаем изучать замечательную библиотеку numpy. Бинарные числовые функции библиотеки numpy Ниже мы даём справочник бинарных числовых функций библиотеки numpy. Справочник унарным функций см. здесь Пример #!/usr/bin/python3 import numpy as np nm1 = np.array([1, 2, 2]) nm2 = np...
1015 читали · 2 года назад
Массив в python. Массив — группа переменных одного типа, расположенных в памяти рядом и имеющих общее имя. Каждая ячейка в массиве имеет уникальный номер (индекс). Для работы с массивами нужно в первую очередь научиться: -выделять память нужного размера под массив., -записывать данные из ячейки массива. В языке python нет такой структуры, как "массив". Вместо этого для хранения объектов используют списки. Списки в Python- набор элементов, каждый из которых имеет свой номер. Нумерация всегда начинается с нуля и т.д. В отличие от обычных массивов в большинстве языков программирования список- динамическая структура, его размер можно изменять во время выполнения программы. Списки можно создать перечислением элементов через запятую в квадратных скобках: А = [1, 2, 3, 56] Списки можно складывать с помощью знака "+": A = [1, 2] + [3, 56] Cложение одинаковых списков заменяется "*", вот так создается список из 10 элементов, заполненный нулями: A = [0] * 10 В более сложных случаях используют генераторы списков: A = [i for i in range (10)] Как вы знаете, цикл for i in range (10) перебирает все значения i от 0-9. Выражение перед словом for это то, что записывается в очередной элемент списка для каждого i: [0, 1, 2, 3, 4, 5, 6, 7, 8 ,9] Такой же список можно получить с помощью функции range: A = list (range(10)) Для заполнения списками квадратами можно использовать такой генератор: A = [ i * i for i in range (10)] Часто в текстовых и учебных программах массив заполняется случайными числами: from random import randint A = [randint(20, 100) for x in range (10)] Длина списка определяется с помощью: N = len (A) Добавление и удаление элементов массива Чтобы добавить одно значение в конец массива, используйте метод append: A = [1, 2, 3] x = 5 A.append(x+3) Метод- подпрограмма, связанная с каким-то объектом. Чтобы вызвать метод, используют точечную запись. Для того, чтобы вставить элемент в любое место массива, применяется метод insert: A = [1, 2, 3] A.insert (1, 35) получаем: A = [1, 35, 2, 3] Для удаления элемента с известным номером используют pop: A = [1, 2, 3] x = A.pop(1) получаем A = [1, 3], x = 2 x = A.pop() получаем A = [1], x = 3 Элементы массива можно удалять не только по номеру, но и по значению- remove: A = [1, 2, 99, 3, 99] A.remove(99) получаем A = [1, 2, 3, 99] Ввод и вывод: Чтобы ввести значения нужно использовать цикл: for i in range (N): print ("А[", i, "]=" , sep = "", end = "") A[i] = int(input()) Когда весь массив вводится в одной строке, в этом случае строку нужно расщепить с помощью split: data = input() s = data.split() Для того, чтобы построить массив, состоящий из целых чисел, нужно применить int: A = [int(x) for x in s] Самый простой способ вывода- вывести массив как 1 объект: print (A) Вывести массив можно и поэлементно: for i n range (N): print (A[i], end = " ") Перебор элементов Перебор состоит в том, что мы в цикле просматриваем все элементы. Переменная цикла изменяется от 0- N -1, где N- кол-во элементов массива: for i in range (N): A [i] += 1 Во многих задачах требуется найти в массиве все элементы, удовлетворяющие условию, и как то их обработать: счётчик = 0 for x in A: if условие выполняется для х: счетчик += 1 Суммирование элементов массива- sum: count = 0 summa =0 for x in A: if 180 < x and x < 190: count += 1 summa += 1 print (summa/count) Суммирование элементов массива- очень распространенно. Для этого есть специальная функция sum: print(sum(A))