Рубрики
Без рубрики

Массив Python – 13 примеров

Модуль массива Python может использоваться для создания массивов для целых чисел и поплавков. В Python нет структуры данных массива в Python, Python Array Append, ломтик, поиск, сортировка.

Автор оригинала: Pankaj Kumar.

Python не имеет явного структуры данных массива. Это потому, что мы можем сделать то же самое со списком.

Список содержит коллекцию элементов, а также поддерживает Add/Update/Delete/Search. Вот почему в Python нельзя использовать отдельную структуру данных в Python для поддержки массивов.

Массив содержит элементы одного и того же типа, но список Python позволяет элементы различных типов. Это единственная функция мудрые разницы между массивом и списком. Но это не выключатель сделки и не гарантирует новую поддержку структуры данных в Python.

Тем не менее, модуль Array Python может использоваться для создания массива, такой как объект для целочисленных, поплавок и символов Unicode.

Модуль массива Python

Модуль массива Python позволяет нам создать массив с ограничением на типов данных. Есть только несколько типов данных, поддерживаемых этим модулем.

Массив Python поддерживаемый код типа

Код типа Unicode был устарел в Python 3.3, и он будет удален в выпуске Python 4.0.

Итак, мы можем создать массив целых чисел и поплавок, используя модуль массива. Давайте начнем с модулем Array и посмотрите на все операции, которые он обеспечивает.

1. Создание массива

Синтаксис для создания массива – Array.array (TypeCode, stass_list) Отказ

import array

# creating array
int_array = array.array('i', [1, 2, 3, 4])

float_array = array.array('f', [1.1, 2.2, 3.3, 4.4])

# unicode array support is deprecated and will be deleted in Python 4
unicode_array = array.array('u', ['\u0394', '\u2167', '\u007B'])

2. Массив печати и его тип

Если мы распечатаем объект массива, это дает нам информацию о типоре и его элементах. Давайте распечатаем массивы, созданные выше, а также распечатайте тип объекта, используя встроенный тип ().

# printing array
print(int_array)
print(float_array)
print(unicode_array)
print(type(int_array))

Выход:

array('i', [1, 2, 3, 4])
array('f', [1.100000023841858, 2.200000047683716, 3.299999952316284, 4.400000095367432])
array('u', 'ΔⅧ{')

3. Элементы массива печати

Мы можем печатать элементы массива, используя петлю для цикла.

import array

int_array = array.array('i', [1, 2, 3, 4])

for a in int_array:
    print(a)

Мы также можем получить доступ к элементу, используя свой индекс. Мы можем использовать индексы для печати элементов массива.

for b in range(0, len(int_array)):
    print(f'int_array[{b}] = {int_array[b]}')

Выход:

int_array[0] = 1
int_array[1] = 2
int_array[2] = 3
int_array[3] = 4

4. Установка и добавления элементов

Мы можем использовать функцию INSERT () для вставки элемента по указанному индексу. Элементы из указанного индекса смещаются вправо на одну позицию.

int_array = array.array('i', [1, 2, 3, 4])
int_array.insert(0, -1)  # -1,1,2,3,4
int_array.insert(2, -2)  # -1,1,-2,2,3,4
print(int_array)

Выход : Массив («I», [-1, 1, -2, 2, 3, 4])

Если вам нужно добавить элемент в конце массива, используйте функцию Append ().

int_array = array.array('i', [1, 2, 3, 4])
int_array.append(-3)
print(int_array)  # array('i', [1, 2, 3, 4, -3])

5. Массив Python поддерживает отрицательный индекс

Мы можем получить доступ к элементам массива Python с помощью отрицательного индекса.

Индекс массива Python
int_array = array.array('i', [10, 20, 30, 40, 50, 60, 70, 80])
print(int_array[-2])  # 70
print(int_array[-5])  # 40

6. Удаление элементов массива

Мы можем использовать метод удаления () для удаления элемента массива.

int_array = array.array('i', [1, 2, 3, 4])
int_array.remove(2)
print(int_array)  # array('i', [1, 3, 4])

Если элемент отсутствует в массиве, ValueError Поднялся.

int_array = array.array('i', [1, 2, 3, 4])
try:
    int_array.remove(20)
except ValueError as ve:
    print(ve)

Выход : array.remove (x): x не в массиве

Мы также можем использовать функцию POP () для удаления элемента в данном индексе. Эта функция возвращает элемент, удаленный из массива. Если мы не укажем индекс, последний элемент удален и возвращен.

int_array = array.array('i', [1, 2, 3, 4])
last_element = int_array.pop()
print(last_element)  # 4
print(int_array)  # array('i', [1, 2, 3])

second_element = int_array.pop(1)
print(second_element)  # 2
print(int_array)  # array('i', [1, 3])

7. Нарезание массива

Array Python поддерживает нарезку нарезки и возвращает новый массив с подэлементами. Оригинальный массив остается неизменным. Нарезка также поддерживает негативные показатели.

int_array = array.array('i', [0, 1, 2, 3, 4, 5])
print(int_array[3:])  # array('i', [3, 4, 5])
print(int_array[:2])  # array('i', [0, 1])
print(int_array[1:3])  # array('i', [1, 2])

# negative index slicing
print(int_array[-2:])  # array('i', [4, 5])
print(int_array[:-2])  # array('i', [0, 1, 2, 3])

8. Поиск элемента в массиве

Мы можем использовать функцию index (), чтобы найти индекс первого возникновения элемента. Если элемент отсутствует в массиве, ValueError повышен.

int_array = array.array('i', [0, 1, 2, 3, 1, 2])

print(f'1 is found at index {int_array.index(1)}')
try:
    print(int_array.index(20))
except ValueError as ve:
    print(ve)

Выход:

1 is found at index 1
array.index(x): x not in array

9. Обновление стоимости в указанном индексе

Мы можем использовать индекс массива с оператором назначения для обновления значения в индексе. Если индекс недействителен, indexError повышен.

int_array = array.array('i', [0, 1, 2, 3, 1, 2])

int_array[0] = -1
int_array[1] = -2
print(int_array)

try:
    int_array[10] = -10
except IndexError as ie:
    print(ie)

Выход:

array('i', [-1, -2, 2, 3, 1, 2])
array assignment index out of range

10. Реверсируя массив

Мы можем использовать функцию Reverse (), чтобы изменить элементы массива.

int_array = array.array('i', [0, 1, 2, 3])
int_array.reverse()
print(int_array)  # array('i', [3, 2, 1, 0])

11. Считать возникновение элемента

Мы можем использовать функцию Count (), чтобы получить количество вхождений значения в массиве.

int_array = array.array('i', [0, 1, 1, 0])
print(int_array.count(1))  # 2
print(int_array.count(10))  # 0

12. Расширение массива, добавив счет

Мы можем использовать функцию Extend () для добавления значений из тотера на конец массива.

array1 = array.array('i', [0, 1])
array2 = array.array('i', [2, 3, 4])

array1.extend(array2)
print(array1)  # array('i', [0, 1, 2, 3, 4])

print(array2)  # array('i', [2, 3, 4])
array2.extend([1, 2])
print(array2)  # array('i', [2, 3, 4, 1, 2])

array1 = array.array('i', [1])
array1.extend(set([0,0,0,2]))
print(array1)  # array('i', [1, 0, 2])

13. Преобразование массива в список

Мы можем использовать функцию Tolist () для преобразования массива в список.

int_array = array.array('i', [0, 1, 2, 3])
print(int_array.tolist())  # [0, 1, 2, 3]

Заключение

Модуль Array Python помогает нам создавать массивы для целых чисел и плавать. Но мы можем выполнить те же операции со списком. Таким образом, вы должны использовать модуль массива только тогда, когда вы хотите, чтобы данные были ограничены данным типом.

Рекомендации: