Rick Giuly wrote:

Hello All,

Case 1

This generates an error, which makes sense because the argument should

be a list of numbers:

numpy.array(10,10)

Case 2

This does not generate an error and the result is an array with a

single element:

a = numpy.array([10])

b = numpy.array([10])

numpy.array(a[0],b[0])

The only different I see here between the numpy.array call in the

cases is that

a[0] is a numpy int32

10 is an int

Why would this minor difference in integer types cause a totally

different result for the two cases - or is something else causing the

difference in results?

The second argument is for a dtype. Basically, we'll accept anything there that

can be coerced to a dtype using numpy.dtype(). For some reason, we have an

undocumented feature where dtype(some_array_or_numpy_scalar) will return the

dtype of that value. Plain Python ints and floats don't have a dtype attached to

them, so we raise an exception.

If you have more numpy questions, please join us on the numpy-discussion mailing

list.

http://www.scipy.org/Mailing_Lists
--

Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma

that is made terrible by our own mad attempt to interpret it as though it had

an underlying truth."

-- Umberto Eco