2 # Ron Murawski <ron@horizonchess.com>
\r
3 # Updated by Jukka Lehtosalo
\r
5 # based on http://docs.python.org/3.2/library/random.html
\r
7 # ----- random classes -----
\r
11 from typing import (
\r
12 Any, TypeVar, Sequence, List, Callable, AbstractSet, Union, Optional
\r
17 class Random(_random.Random):
\r
18 def __init__(self, x: Any = ...) -> None: ...
\r
19 def seed(self, a: Any = ..., version: int = ...) -> None: ...
\r
20 def getstate(self) -> tuple: ...
\r
21 def setstate(self, state: tuple) -> None: ...
\r
22 def getrandbits(self, k: int) -> int: ...
\r
23 def randrange(self, start: int, stop: Union[int, None] = ..., step: int = ...) -> int: ...
\r
24 def randint(self, a: int, b: int) -> int: ...
\r
25 def choice(self, seq: Sequence[_T]) -> _T: ...
\r
26 if sys.version_info >= (3, 6):
\r
27 def choices(self, population: Sequence[_T], weights: Optional[Sequence[float]] = ..., *, cum_weights: Optional[Sequence[float]] = ..., k: int = ...) -> List[_T]: ...
\r
28 def shuffle(self, x: List[Any], random: Union[Callable[[], float], None] = ...) -> None: ...
\r
29 def sample(self, population: Union[Sequence[_T], AbstractSet[_T]], k: int) -> List[_T]: ...
\r
30 def random(self) -> float: ...
\r
31 def uniform(self, a: float, b: float) -> float: ...
\r
32 def triangular(self, low: float = ..., high: float = ...,
\r
33 mode: float = ...) -> float: ...
\r
34 def betavariate(self, alpha: float, beta: float) -> float: ...
\r
35 def expovariate(self, lambd: float) -> float: ...
\r
36 def gammavariate(self, alpha: float, beta: float) -> float: ...
\r
37 def gauss(self, mu: float, sigma: float) -> float: ...
\r
38 def lognormvariate(self, mu: float, sigma: float) -> float: ...
\r
39 def normalvariate(self, mu: float, sigma: float) -> float: ...
\r
40 def vonmisesvariate(self, mu: float, kappa: float) -> float: ...
\r
41 def paretovariate(self, alpha: float) -> float: ...
\r
42 def weibullvariate(self, alpha: float, beta: float) -> float: ...
\r
44 # SystemRandom is not implemented for all OS's; good on Windows & Linux
\r
45 class SystemRandom(Random):
\r
48 # ----- random function stubs -----
\r
49 def seed(a: Any = ..., version: int = ...) -> None: ...
\r
50 def getstate() -> object: ...
\r
51 def setstate(state: object) -> None: ...
\r
52 def getrandbits(k: int) -> int: ...
\r
53 def randrange(start: int, stop: Union[None, int] = ..., step: int = ...) -> int: ...
\r
54 def randint(a: int, b: int) -> int: ...
\r
55 def choice(seq: Sequence[_T]) -> _T: ...
\r
56 if sys.version_info >= (3, 6):
\r
57 def choices(population: Sequence[_T], weights: Optional[Sequence[float]] = ..., *, cum_weights: Optional[Sequence[float]] = ..., k: int = ...) -> List[_T]: ...
\r
58 def shuffle(x: List[Any], random: Union[Callable[[], float], None] = ...) -> None: ...
\r
59 def sample(population: Union[Sequence[_T], AbstractSet[_T]], k: int) -> List[_T]: ...
\r
60 def random() -> float: ...
\r
61 def uniform(a: float, b: float) -> float: ...
\r
62 def triangular(low: float = ..., high: float = ...,
\r
63 mode: float = ...) -> float: ...
\r
64 def betavariate(alpha: float, beta: float) -> float: ...
\r
65 def expovariate(lambd: float) -> float: ...
\r
66 def gammavariate(alpha: float, beta: float) -> float: ...
\r
67 def gauss(mu: float, sigma: float) -> float: ...
\r
68 def lognormvariate(mu: float, sigma: float) -> float: ...
\r
69 def normalvariate(mu: float, sigma: float) -> float: ...
\r
70 def vonmisesvariate(mu: float, kappa: float) -> float: ...
\r
71 def paretovariate(alpha: float) -> float: ...
\r
72 def weibullvariate(alpha: float, beta: float) -> float: ...
\r