You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
77 lines
2.2 KiB
77 lines
2.2 KiB
"""
|
|
DType classes and utility (:mod:`numpy.dtypes`)
|
|
===============================================
|
|
|
|
This module is home to specific dtypes related functionality and their classes.
|
|
For more general information about dtypes, also see `numpy.dtype` and
|
|
:ref:`arrays.dtypes`.
|
|
|
|
Similar to the builtin ``types`` module, this submodule defines types (classes)
|
|
that are not widely used directly.
|
|
|
|
.. versionadded:: NumPy 1.25
|
|
|
|
The dtypes module is new in NumPy 1.25. Previously DType classes were
|
|
only accessible indirectly.
|
|
|
|
|
|
DType classes
|
|
-------------
|
|
|
|
The following are the classes of the corresponding NumPy dtype instances and
|
|
NumPy scalar types. The classes can be used in ``isinstance`` checks and can
|
|
also be instantiated or used directly. Direct use of these classes is not
|
|
typical, since their scalar counterparts (e.g. ``np.float64``) or strings
|
|
like ``"float64"`` can be used.
|
|
|
|
.. list-table::
|
|
:header-rows: 1
|
|
|
|
* - Group
|
|
- DType class
|
|
|
|
* - Boolean
|
|
- ``BoolDType``
|
|
|
|
* - Bit-sized integers
|
|
- ``Int8DType``, ``UInt8DType``, ``Int16DType``, ``UInt16DType``,
|
|
``Int32DType``, ``UInt32DType``, ``Int64DType``, ``UInt64DType``
|
|
|
|
* - C-named integers (may be aliases)
|
|
- ``ByteDType``, ``UByteDType``, ``ShortDType``, ``UShortDType``,
|
|
``IntDType``, ``UIntDType``, ``LongDType``, ``ULongDType``,
|
|
``LongLongDType``, ``ULongLongDType``
|
|
|
|
* - Floating point
|
|
- ``Float16DType``, ``Float32DType``, ``Float64DType``,
|
|
``LongDoubleDType``
|
|
|
|
* - Complex
|
|
- ``Complex64DType``, ``Complex128DType``, ``CLongDoubleDType``
|
|
|
|
* - Strings
|
|
- ``BytesDType``, ``BytesDType``
|
|
|
|
* - Times
|
|
- ``DateTime64DType``, ``TimeDelta64DType``
|
|
|
|
* - Others
|
|
- ``ObjectDType``, ``VoidDType``
|
|
|
|
"""
|
|
|
|
__all__ = []
|
|
|
|
|
|
def _add_dtype_helper(DType, alias):
|
|
# Function to add DTypes a bit more conveniently without channeling them
|
|
# through `numpy.core._multiarray_umath` namespace or similar.
|
|
from numpy import dtypes
|
|
|
|
setattr(dtypes, DType.__name__, DType)
|
|
__all__.append(DType.__name__)
|
|
|
|
if alias:
|
|
alias = alias.removeprefix("numpy.dtypes.")
|
|
setattr(dtypes, alias, DType)
|
|
__all__.append(alias)
|
|
|