array¶
Модуль array
определяет массивы в python. Массивы очень похожи на списки, но с ограничением на тип данных и размер каждого элемента.
Размер и тип элемента в массиве определяется при его создании и может принимать следующие значения:
Код типа | Тип в C | Тип в python | Минимальный размер в байтах |
---|---|---|---|
b |
signed char | int | 1 |
B |
unsigned char | int | 1 |
h |
signed short | int | 2 |
H |
unsigned short | int | 2 |
i |
signed int | int | 2 |
I |
unsigned int | int | 2 |
l |
signed long | int | 4 |
L |
unsigned long | int | 4 |
q |
signed long long | int | 8 |
Q |
unsigned long long | int | 8 |
f |
float | float | 4 |
d |
double | float | 8 |
Класс array.array(TypeCode [, инициализатор])
- новый массив, элементы которого ограничены TypeCode
, и инициализатор, который должен быть списком, объектом, который поддерживает интерфейс буфера, или итерируемый объект.
array.typecodes
- строка, содержащая все возможные типы в массиве.
Массивы изменяемы. Массивы поддерживают все списковые методы (индексация, срезы, умножения, итерации), и другие методы.
Методы массивов (array) в python¶
array.typecode
TypeCode
символ, использованный при создании массива.array.itemsize
- размер в байтах одного элемента в массиве.
array.append(x)
- добавление элемента в конец массива.
array.buffer_info()
- кортеж (ячейка памяти, длина). Полезно для низкоуровневых операций.
array.byteswap()
- изменить порядок следования байтов в каждом элементе массива. Полезно при чтении данных из файла, написанного на машине с другим порядком байтов.
array.count(x)
- возвращает количество вхождений
x
в массив. array.extend(iter)
- добавление элементов из объекта в массив.
array.frombytes(b)
- делает массив
array
из массива байт. Количество байт должно быть кратно размеру одного элемента в массиве. array.fromfile(F, N)
- читает
N
элементов из файла и добавляет их в конец массива. Файл должен быть открыт на бинарное чтение. Если доступно меньшеN
элементов, генерируется исключениеEOFError
, но элементы, которые были доступны, добавляются в массив. array.fromlist(список)
- добавление элементов из списка.
array.index(x)
- номер первого вхождения
x
в массив. array.insert(n, x)
- включить новый пункт со значением
x
в массиве перед номеромn
. Отрицательные значения рассматриваются относительно конца массива. array.pop(i)
- удаляет i-ый элемент из массива и возвращает его. По умолчанию удаляется последний элемент.
array.remove(x)
- удалить первое вхождение
x
из массива. array.reverse()
- обратный порядок элементов в массиве.
array.tobytes()
- преобразование к байтам.
array.tofile(f)
- запись массива в открытый файл.
array.tolist()
- преобразование массива в список.
Вот и всё, что можно было рассказать про массивы. Они используются редко, когда нужно достичь высокой скорости работы. В остальных случаях массивы можно заменить другими типами данных: списками, кортежами, строками.