mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-08 04:54:47 +08:00
This commit is contained in:
@@ -3,12 +3,17 @@
|
||||
from decimal import Decimal
|
||||
from fractions import Fraction
|
||||
import sys
|
||||
from typing import Any, Iterable, List, Optional, SupportsFloat, Type, TypeVar, Union
|
||||
from typing import Any, Iterable, List, Optional, SupportsFloat, Type, TypeVar, Union, Protocol
|
||||
|
||||
_T = TypeVar("_T")
|
||||
# Most functions in this module accept homogeneous collections of one of these types
|
||||
_Number = TypeVar('_Number', float, Decimal, Fraction)
|
||||
|
||||
# Used in median_high, median_low
|
||||
class _Sortable(Protocol):
|
||||
def __lt__(self, other) -> bool: ...
|
||||
_SortableT = TypeVar("_SortableT", bound=_Sortable)
|
||||
|
||||
class StatisticsError(ValueError): ...
|
||||
|
||||
if sys.version_info >= (3, 8):
|
||||
@@ -18,8 +23,8 @@ def mean(data: Iterable[_Number]) -> _Number: ...
|
||||
if sys.version_info >= (3, 6):
|
||||
def harmonic_mean(data: Iterable[_Number]) -> _Number: ...
|
||||
def median(data: Iterable[_Number]) -> _Number: ...
|
||||
def median_low(data: Iterable[_Number]) -> _Number: ...
|
||||
def median_high(data: Iterable[_Number]) -> _Number: ...
|
||||
def median_low(data: Iterable[_SortableT]) -> _SortableT: ...
|
||||
def median_high(data: Iterable[_SortableT]) -> _SortableT: ...
|
||||
def median_grouped(data: Iterable[_Number], interval: _Number = ...) -> _Number: ...
|
||||
def mode(data: Iterable[_Number]) -> _Number: ...
|
||||
if sys.version_info >= (3, 8):
|
||||
|
||||
Reference in New Issue
Block a user