Il modulo array permette di operare con array di caratteri, numeri interi e numeri in virgola mobile in modo efficiente.
Il programmatore che arriva a questo punto normalmente passa al modulo numpy …
Costruttori
array.array(tipo) | Genera un array vuoto per elementi di un certo tipo |
array.array(tipo, it) | Genera un array con elementi di un certo tipo e lo inizializza con gli elementi in un iterabile: range, tupla, array, … |
... | … |
Il tipo può essere carattere, intero, virgola mobile e corto / lungo, con / senza segno…
Le specifiche sono quelle di altri linguaggi (C, Java, …)
- ‘h‘ (signed short integer)
- ‘H‘ (unsigned short integer)
- ‘i‘ (signed integer)
- ‘I‘ (unsigned integer)
- ‘l‘ (signed long integer)
- ‘L‘ (unsigned long integer)
- ‘f‘ (floating point number)
- ‘d‘ (double precision floating point number)
- …
Operatori
a1 + a2 | Concatenazione |
n * a | Concatenazione ennesima |
a[p] | Selezione |
a[p1 : p2] | Slicing |
x in a | x appartiene all’array? |
... | … |
Funzioni/metodi
a.append(x) | Aggiunge x come ultimo elemento (a destra…) |
a.count(x) | Restituisce il numero di occorrenze di x |
a.extend(it) | Aggiunge gli elementi dell’iterabile it |
a.fromlist(lista) | Aggiunge gli elementi della lista. |
a.index(x) | Restituisce la posizione della prima occorrenza di x |
a.insert(p, x) | Inserisce l’elemento x alla posizione p |
a.itemsize | Restituisce la dimensione, in byte, degli elementi |
len(a) | Restituisce il numero di elementi |
max(a) | Restituisce il valore massimo |
min(a) | Restituisce il valore minimo |
a.pop() | Restituisce, e rimuove, l’ultimo elemento |
a.pop(p) | Restituisce, e rimuove, l’elemento alla posizione p |
a.remove(x) | Elimina la prima occorrenza di x |
a.reverse() | Capovolge il contenuto dell’array |
sum(a) | Restituisce la somma degli elementi |
a.typecode | Restituisce il carattere utilizzato per creare l’array (‘i’, …) |
a.typecodes | Restituisce una stringa con tutti i codici disponibili per creare un array (‘i’, …) |
... | … |
Ancora
a.frombytes(stringa)a.fromfile(file, n)a.fromunicode(stringa)
Prova
a = array('i') # ... array('i')
a = array('i',range(4)) # ... array('i', [0, 1, 2, 3])
a.append(-100) # ... [0, 1, 2, 3, -100]
a.insert(1,3) # ... [0, 3, 1, 2, 3, -100]
a.remove(3) # ... [0, 1, 2, 3, -100]
a.pop() # -100 [0, 1, 2, 3]
a.reverse() # ... [3, 2, 1, 0]
len(a) # 4
min(a) # 0
max(a) # 3
sum(a) # 6
10 in a # False
10 not in a # True
a+a # array['i', [3,2,1,0,3,2,1,0])
2*a # array['i', [3,2,1,0,3,2,1,0])
a[0] # 3
a[0] = 100 # ... array('i',[100, 2,1,0])
a[1:3] # array('i',[2,1])
a[1:3] = array(...) # ...