The array Module
The array
module
supplies a type, also called array
, whose
instances are mutable sequences, like lists. An
array
a
is a
one-dimensional sequence whose items can be only characters, or only
numbers of one specific numeric type that is fixed when
a
is created.
The extension module Numeric
, covered later in
this chapter, also supplies a type called array
that is far more powerful than array.array
. For
advanced array operations and multidimensional arrays, I recommend
Numeric
even if your array elements are not
numbers.
array.array
is a simple type, whose main
advantage is that, compared to a list, it can save memory to hold
objects all of the same (numeric or character) type. An
array
object a
has a
one-character read-only attribute
a
.typecode
, set when
a
is created, that gives the type of
a
’s items. Table 15-2 shows the possible type codes for
array
.
Table 15-2. Type codes for the array module
Type code |
C type |
Python type |
Minimum size |
---|---|---|---|
'c' |
char |
|
1 byte |
'b' |
char |
int |
1 byte |
'B' |
unsigned char |
int |
1 byte |
'h' |
short |
int |
2 bytes |
'H' |
unsigned short |
int |
2 bytes |
'i' |
int |
int |
2 bytes |
'I' |
unsigned |
long |
2 bytes |
'l' |
long |
int |
4 bytes |
'L' |
unsigned long |
long |
4 bytes |
'f' |
float |
float |
4 bytes |
'd' |
double |
float |
8 bytes |
The size in bytes of each item may be larger than the minimum,
depending on the machine’s architecture, and is
available as the read-only attribute
a
.itemsize
. Module
array
supplies just one function, a factory ...
Get Python in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.