array — nizovi numeričkih podataka¶
Ovaj modul definira tip array.array: prostorno učinkovit slijed vrijednosti jednog fiksnog numeričkog tipa, indeksiran poput liste, ali poduprt kontinuiranim blokom memorije dostupnim putem protokola međuspremnika (buffer protocol).
Podržani kodovi tipova¶
Argument typecode od jednog znaka odabire tip elementa:
Kod tipa |
C tip |
Bajtovi |
Python tip |
|---|---|---|---|
|
|
1 |
|
|
|
1 |
|
|
|
2 |
|
|
|
2 |
|
|
|
2 ili 4 |
|
|
|
2 ili 4 |
|
|
|
4 |
|
|
|
4 |
|
|
|
8 |
|
|
|
8 |
|
|
|
4 |
|
|
|
8 |
|
Kodovi 'f' i 'd' zahtijevaju ugrađeni program (firmware) izgrađen s podrškom za pomični zarez (zadano na većini ploča). Točna širina kodova 'i' i 'I' slijedi C ABI domaćina — tipično 4 bajta na Cortex-M portovima.
Klase¶
- class array.array(typecode: str, iterable: Iterable = ())¶
Stvara niz s elementima zadanog tipa. Početni sadržaj niza zadan je s iterable. Ako nije naveden, stvara se prazan niz.
Uz metode navedene u nastavku, objekti niza također implementiraju protokol međuspremnika. To znači da se sadržaju cijelog niza može pristupiti kao sirovim bajtovima putem
memoryviewili drugih sučelja koja koriste ovaj protokol.- extend(iterable: Iterable) None¶
Dodaje nove elemente sadržane u iterable na kraj niza, povećavajući ga.
- __getitem__(index: int | slice) Any¶
Indeksirano čitanje niza, pozvano kao
a[index](gdje jeaarray). Vraća vrijednost ako je index tipaint, aarrayako je index isječak (slice). Negativni indeksi broje se od kraja, aIndexErrorse podiže ako je indeks izvan raspona.Napomena:
__getitem__se ne može pozvati izravno (a.__getitem__(index)ne uspijeva) i nije prisutan u__dict__, noa[index]ipak radi.
- __setitem__(index: int | slice, value: Any) None¶
Indeksirano pisanje u niz, pozvano kao
a[index] = value(gdje jeaarray).valueje jedna vrijednost ako je index tipaint, aarrayako je index isječak (slice). Negativni indeksi broje se od kraja, aIndexErrorse podiže ako je indeks izvan raspona.Napomena:
__setitem__se ne može pozvati izravno (a.__setitem__(index, value)ne uspijeva) i nije prisutan u__dict__, noa[index] = valueipak radi.
- __len__() int¶
Vraća broj stavki u nizu, pozvano kao
len(a)(gdje jeaarray).Napomena:
__len__se ne može pozvati izravno (a.__len__()ne uspijeva) i metoda nije prisutna u__dict__, nolen(a)ipak radi.
- __add__(other: array) array¶
Vraća novi
arraykoji je spajanje niza s other, pozvano kaoa + other(gdje suai other obaarrays).Napomena:
__add__se ne može pozvati izravno (a.__add__(other)ne uspijeva) i nije prisutan u__dict__, noa + otheripak radi.
- __iadd__(other: array) array¶
Spaja niz s other na mjestu, pozvano kao
a += other(gdje suai other obaarrays). Ekvivalentnoextend(other).Napomena:
__iadd__se ne može pozvati izravno (a.__iadd__(other)ne uspijeva) i nije prisutan u__dict__, noa += otheripak radi.
- __repr__() str¶
Vraća string reprezentaciju niza, pozvano kao
str(a)ilirepr(a)(gdje jeaarray). Vraća string"array(<type>, [<elements>])", gdje je<type>slovo koda tipa za niz, a<elements>je popis elemenata niza odvojen zarezima.Napomena:
__repr__se ne može pozvati izravno (a.__repr__()ne uspijeva) i nije prisutan u__dict__, nostr(a)irepr(a)oba rade.