[Numpy-discussion] Using scalar constructors to produce arrays

Joshua Wilson josh.craig.wilson at gmail.com
Sun Apr 19 14:46:50 EDT 2020


Over in the NumPy stubs there's an issue

https://github.com/numpy/numpy-stubs/issues/41

which points out that you can in fact do something like

```
np.float32([1.0, 0.0, 0.0])
```

to construct an ndarray of float32. It seems to me that though you can
do that, it is not a best practice, and one should instead do

```
np.array([1.0, 0.0, 0.0], dtype=np.float32)
```

Do people agree with that assessment of what the best practice is? If
so, it seems to make the most sense to continue banning constructs
like `np.float32([1.0, 0.0, 0.0])` in the type stubs (as they should
promote making easy-to-understand, scalable NumPy code).

- Josh


More information about the NumPy-Discussion mailing list