Масив – Резюмета от

Модулът array декларира нов тип обект, array, който действа много като списък, но всичките му елементи могат да бъдат само от един тип.

Модулът за масив може да бъде полезен, когато искате да приложите ефективни от паметта списъци с данни и знаете, че всички елементи на списъка са от един и същи тип. Например, списък от 10 милиона цели числа ще изисква приблизително 160 MB памет, докато масив от 10 милиона цели числа ще отнеме само 40 MB. Въпреки тези спестявания на памет, нито една от основните операции върху масиви не е по-бърза от подобни операции върху списъци, всъщност те могат да бъдат дори по-бавни.

Когато извършвате изчисления, включващи масиви, внимавайте с операциите, които създават списъци. Например, когато разбиранията на списъци се прилагат към масиви, те ги преобразуват в цели списъци, унищожавайки всички ползи за спестяване на памет. В такива ситуации е по-добре да създавате нови масиви, като използвате генераторни изрази. Например:

Тъй като ползата от използването на масиви е спестяването на памет, може да има по-голям смисъл да се извършват операции директно върху оригиналния масив. Функцията enumerate() предоставя ефективен начин за прилагане на такива операции, например:

За големи масиви операциите вътре в масива са с около 15 процента по-бързи от подобен код, който създава нов масив с помощта на генераторен израз.

Типът на елементите на масива се определя в момента на създаване, като се използва един от кодовете, посочени в табл.

Тип код ОписаниеТип на език C Минимален размер (в байтове)
° С8-битов знаквъглен1
b8-битово цяло числознак със знак1
б8-битово цяло число без знакнеподписан char1
uUnicode знакPY_UNICODE2 или 4
ч16-битово цяло числокъс2
з16-битово цяло число без знакнеподписан кратък2
азЦялвътр4 или 8
азЦяло число без знакunsigned int4 или 8
лдълго цяло числодълго4 или 8
ЛДълго цяло число без знакнеподписан дълъг4 или 8
fплувка с единична точностплавам4
дпоплавък с двойна точностдвойно8
масив. масив (код на типа [, инициализатор]) ¶
  • инициализатор - низ или списък от стойности, използвани за инициализиране на стойностите на елементите на масива

Връща обект от масив от тип typecode. Опит за вмъкване на елементи в масив, който не съответства на типа, използван за създаване на масива, хвърля изключение TypeError.

Връща броя на срещанията на x в масива.

Добавя обект b в края на масив a. Обект b може да бъде масив или друг итерируем обект, чийто тип елемент е същият като типа елемент на масив a.

Чете n елемента (в двоичен) от файловия обект f и ги добавя в края на масива. Аргументът f трябва да е файлов обект. Ако броят на елементите, които могат да бъдат прочетени от файла, е по-малък от n, предизвиква изключение EOFError.

масив. fromlist(списък)¶

Добавя елементи от списъка в края на масива a. Аргументът на списъка може да бъде итерируем обект.

масив. от низ(ове)¶

Добавя елементите от низа s в края на масива, където s се интерпретира като низ от двоични стойности, сякаш се чете от метода fromfile().

Връща индекса на първото срещане на x в масив a. Извежда изключение ValueError, ако x не съществува.

Вмъква нов елемент със стойност x преди елемента с индекс i.

Премахва елемента с индекс i от масива и го връща. Ако i е пропуснато, премахва последния елемент.

Премахва първото срещане на x от масива. Извежда изключение ValueError, ако x не съществува.

Пренарежда елементите на масив в обратен ред.

Записва всички елементи от масива във файл f. Данните се съхраняват в двоичен формат.

Преобразува масив в нормален списък.

Преобразува масив в низ от двоични данни, сякаш записът се извършва от метода tofile().

Преобразува масив в Unicode низ. Извежда изключение ValueError, ако елементите на масива са от тип, различен от 'u'.