This release is a pre-release and may not be stable for production use.
⚠ This describes the 2.0.0 alpha release.
For the latest stable release, pick 1.4.4
💡 Type hints for NumPy
💡 Extensive dynamic type checks for dtypes and shapes of arrays
💡 Limited static type checks with MyPy
Example of a hinted function with nptyping:
>>> from nptyping import NDArray, Int, Shape
>>> def func(arr: NDArray[Shape["2, 2"], Int]) -> None:
... pass
Example of instance checking:
>>> from numpy import array
>>> isinstance(array([[1, 2], [3, 4]]), NDArray[Shape["2, 2"], Int])
True
>>> isinstance(array([[1., 2.], [3., 4.]]), NDArray[Shape["2, 2"], Int])
False
>>> isinstance(array([1, 2, 3, 4]), NDArray[Shape["2, 2"], Int])
False
nptyping also provides assert_isinstance. In contrast to assert isinstance(...), this won't cause IDEs or MyPy
complaints. Here is an example:
>>> from nptyping import assert_isinstance
>>> assert_isinstance(array([1]), NDArray[Shape["1"], Int])
True
Here is an example of how detailed expressions can become with nptyping:
def plan_route(locations: NDArray[Shape["[from, to], [x, y]"], Float]) -> NDArray[Shape["* stops, [x, y]"], Float]:
...
More examples can be found in the documentation.
Installation
pip install nptyping
Documentation
-
User documentation
The place to go if you are using this library. -
Release notes
To see what's new, check out the release notes. -
Contributing
If you're interested in developing along, find the guidelines here. -
Licence
If you want to check out how open source this library is.
Metadata
Release files for nptyping 2.0.0a2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nptyping-2.0.0a2-py3-none-any.whl | Python 3 | none | any | Details |
Release files / nptyping-2.0.0a2-py3-none-any.whl
| Download URL | nptyping-2.0.0a2-py3-none-any.whl |
|---|---|
| Size | 19.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
06213d3da25eac355e032f9ce91037b43bce8de72bc5a6ae96527fe234dd9dd8
|
|
BLAKE2b-256 checksum How to use checksums |
48be44fae23db4e7587330cc8d84bb0922f8f11d8377042a0bb15680090d76d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.0
|