143 lines
4.3 KiB
Python
143 lines
4.3 KiB
Python
|
from types import TracebackType
|
||
|
from collections.abc import Callable
|
||
|
from typing import Any, Literal, TypedDict, SupportsIndex
|
||
|
|
||
|
# Using a private class is by no means ideal, but it is simply a consequence
|
||
|
# of a `contextlib.context` returning an instance of aforementioned class
|
||
|
from contextlib import _GeneratorContextManager
|
||
|
|
||
|
from numpy import (
|
||
|
ndarray,
|
||
|
generic,
|
||
|
bool_,
|
||
|
integer,
|
||
|
timedelta64,
|
||
|
datetime64,
|
||
|
floating,
|
||
|
complexfloating,
|
||
|
void,
|
||
|
str_,
|
||
|
bytes_,
|
||
|
longdouble,
|
||
|
clongdouble,
|
||
|
)
|
||
|
from numpy._typing import ArrayLike, _CharLike_co, _FloatLike_co
|
||
|
|
||
|
_FloatMode = Literal["fixed", "unique", "maxprec", "maxprec_equal"]
|
||
|
|
||
|
class _FormatDict(TypedDict, total=False):
|
||
|
bool: Callable[[bool_], str]
|
||
|
int: Callable[[integer[Any]], str]
|
||
|
timedelta: Callable[[timedelta64], str]
|
||
|
datetime: Callable[[datetime64], str]
|
||
|
float: Callable[[floating[Any]], str]
|
||
|
longfloat: Callable[[longdouble], str]
|
||
|
complexfloat: Callable[[complexfloating[Any, Any]], str]
|
||
|
longcomplexfloat: Callable[[clongdouble], str]
|
||
|
void: Callable[[void], str]
|
||
|
numpystr: Callable[[_CharLike_co], str]
|
||
|
object: Callable[[object], str]
|
||
|
all: Callable[[object], str]
|
||
|
int_kind: Callable[[integer[Any]], str]
|
||
|
float_kind: Callable[[floating[Any]], str]
|
||
|
complex_kind: Callable[[complexfloating[Any, Any]], str]
|
||
|
str_kind: Callable[[_CharLike_co], str]
|
||
|
|
||
|
class _FormatOptions(TypedDict):
|
||
|
precision: int
|
||
|
threshold: int
|
||
|
edgeitems: int
|
||
|
linewidth: int
|
||
|
suppress: bool
|
||
|
nanstr: str
|
||
|
infstr: str
|
||
|
formatter: None | _FormatDict
|
||
|
sign: Literal["-", "+", " "]
|
||
|
floatmode: _FloatMode
|
||
|
legacy: Literal[False, "1.13", "1.21"]
|
||
|
|
||
|
def set_printoptions(
|
||
|
precision: None | SupportsIndex = ...,
|
||
|
threshold: None | int = ...,
|
||
|
edgeitems: None | int = ...,
|
||
|
linewidth: None | int = ...,
|
||
|
suppress: None | bool = ...,
|
||
|
nanstr: None | str = ...,
|
||
|
infstr: None | str = ...,
|
||
|
formatter: None | _FormatDict = ...,
|
||
|
sign: Literal[None, "-", "+", " "] = ...,
|
||
|
floatmode: None | _FloatMode = ...,
|
||
|
*,
|
||
|
legacy: Literal[None, False, "1.13", "1.21"] = ...
|
||
|
) -> None: ...
|
||
|
def get_printoptions() -> _FormatOptions: ...
|
||
|
def array2string(
|
||
|
a: ndarray[Any, Any],
|
||
|
max_line_width: None | int = ...,
|
||
|
precision: None | SupportsIndex = ...,
|
||
|
suppress_small: None | bool = ...,
|
||
|
separator: str = ...,
|
||
|
prefix: str = ...,
|
||
|
# NOTE: With the `style` argument being deprecated,
|
||
|
# all arguments between `formatter` and `suffix` are de facto
|
||
|
# keyworld-only arguments
|
||
|
*,
|
||
|
formatter: None | _FormatDict = ...,
|
||
|
threshold: None | int = ...,
|
||
|
edgeitems: None | int = ...,
|
||
|
sign: Literal[None, "-", "+", " "] = ...,
|
||
|
floatmode: None | _FloatMode = ...,
|
||
|
suffix: str = ...,
|
||
|
legacy: Literal[None, False, "1.13", "1.21"] = ...,
|
||
|
) -> str: ...
|
||
|
def format_float_scientific(
|
||
|
x: _FloatLike_co,
|
||
|
precision: None | int = ...,
|
||
|
unique: bool = ...,
|
||
|
trim: Literal["k", ".", "0", "-"] = ...,
|
||
|
sign: bool = ...,
|
||
|
pad_left: None | int = ...,
|
||
|
exp_digits: None | int = ...,
|
||
|
min_digits: None | int = ...,
|
||
|
) -> str: ...
|
||
|
def format_float_positional(
|
||
|
x: _FloatLike_co,
|
||
|
precision: None | int = ...,
|
||
|
unique: bool = ...,
|
||
|
fractional: bool = ...,
|
||
|
trim: Literal["k", ".", "0", "-"] = ...,
|
||
|
sign: bool = ...,
|
||
|
pad_left: None | int = ...,
|
||
|
pad_right: None | int = ...,
|
||
|
min_digits: None | int = ...,
|
||
|
) -> str: ...
|
||
|
def array_repr(
|
||
|
arr: ndarray[Any, Any],
|
||
|
max_line_width: None | int = ...,
|
||
|
precision: None | SupportsIndex = ...,
|
||
|
suppress_small: None | bool = ...,
|
||
|
) -> str: ...
|
||
|
def array_str(
|
||
|
a: ndarray[Any, Any],
|
||
|
max_line_width: None | int = ...,
|
||
|
precision: None | SupportsIndex = ...,
|
||
|
suppress_small: None | bool = ...,
|
||
|
) -> str: ...
|
||
|
def set_string_function(
|
||
|
f: None | Callable[[ndarray[Any, Any]], str], repr: bool = ...
|
||
|
) -> None: ...
|
||
|
def printoptions(
|
||
|
precision: None | SupportsIndex = ...,
|
||
|
threshold: None | int = ...,
|
||
|
edgeitems: None | int = ...,
|
||
|
linewidth: None | int = ...,
|
||
|
suppress: None | bool = ...,
|
||
|
nanstr: None | str = ...,
|
||
|
infstr: None | str = ...,
|
||
|
formatter: None | _FormatDict = ...,
|
||
|
sign: Literal[None, "-", "+", " "] = ...,
|
||
|
floatmode: None | _FloatMode = ...,
|
||
|
*,
|
||
|
legacy: Literal[None, False, "1.13", "1.21"] = ...
|
||
|
) -> _GeneratorContextManager[_FormatOptions]: ...
|