Масив – Резюмета от
Модулът array декларира нов тип обект, array, който действа много като списък, но всичките му елементи могат да бъдат само от един тип.
Модулът за масив може да бъде полезен, когато искате да приложите ефективни от паметта списъци с данни и знаете, че всички елементи на списъка са от един и същи тип. Например, списък от 10 милиона цели числа ще изисква приблизително 160 MB памет, докато масив от 10 милиона цели числа ще отнеме само 40 MB. Въпреки тези спестявания на памет, нито една от основните операции върху масиви не е по-бърза от подобни операции върху списъци, всъщност те могат да бъдат дори по-бавни.
Когато извършвате изчисления, включващи масиви, внимавайте с операциите, които създават списъци. Например, когато разбиранията на списъци се прилагат към масиви, те ги преобразуват в цели списъци, унищожавайки всички ползи за спестяване на памет. В такива ситуации е по-добре да създавате нови масиви, като използвате генераторни изрази. Например:
Тъй като ползата от използването на масиви е спестяването на памет, може да има по-голям смисъл да се извършват операции директно върху оригиналния масив. Функцията enumerate() предоставя ефективен начин за прилагане на такива операции, например:
За големи масиви операциите вътре в масива са с около 15 процента по-бързи от подобен код, който създава нов масив с помощта на генераторен израз.
Типът на елементите на масива се определя в момента на създаване, като се използва един от кодовете, посочени в табл.
° С | 8-битов знак | въглен | 1 |
b | 8-битово цяло число | знак със знак | 1 |
б | 8-битово цяло число без знак | неподписан char | 1 |
u | Unicode знак | PY_UNICODE | 2 или 4 |
ч | 16-битово цяло число | къс | 2 |
з | 16-битово цяло число без знак | неподписан кратък | 2 |
аз | Цял | вътр | 4 или 8 |
аз | Цяло число без знак | unsigned int | 4 или 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'.