Not rate that you’d have a use case, but rate that the performance would be in issue. In past experiments, I’ve found the array re-allocation scheme is remarkably performant.
On the other hand, all the methods suggested in this thread require at least a double allocation— which may not be noticeable in many applications, but it’s also a fairly light lift to make a single constructer for a pre-allocated array.
And as Stephan pointed out — it would help in some high performance situations.
One thing to keep In mind is that array.array is useful for use from C/Cython, when you don’t want the overhead of numpy.