[NumPy-Tickets] [NumPy] #1701: Accessing Type Conversion/Promotion/Coercion Rules (was: NumPy dtype arithmetic is the opposite of Python type arithmetic!)
NumPy Trac
numpy-tickets@scipy....
Tue Jan 4 21:46:38 CST 2011
#1701: Accessing Type Conversion/Promotion/Coercion Rules
-------------------------+--------------------------------------------------
Reporter: pv00 | Owner: somebody
Type: defect | Status: reopened
Priority: normal | Milestone: 2.0.0
Component: numpy.core | Version: 1.5.0
Resolution: | Keywords: dtype
-------------------------+--------------------------------------------------
Changes (by pv00):
* status: closed => reopened
* resolution: invalid =>
Comment:
Ah you are right about the consequence of bool(dtype(...)) == False; my
sample code is useless.
What I was trying to do is access NumPy's type conversion / coercion
rules.
My question should have been: if I want this to work:
def make_new_array(ndarrayOfArbitraryShape_A, ndarrayOfArbitraryShape_B):
new_dtype = common_dtype(ndarrayOfArbitraryShape_A.dtype,
ndarrayOfArbitraryShape_B.dtype)
new_array = numpy.zeros(BigShape, dtype=new_dtype)
return new_array
is there a better way than the ugly and awkward:
def common_dtype(A,B):
return (numpy.zeros((1),dtype=B.dtype) +
numpy.zeros((1),dtype=A.dtype)).dtype
--
Ticket URL: <http://projects.scipy.org/numpy/ticket/1701#comment:2>
NumPy <http://projects.scipy.org/numpy>
My example project
More information about the NumPy-Tickets
mailing list