Format: application/octet-stream
⬇ Download File (3.1 KB)
   1  import _random
   2  from typing import AbstractSet, Any, Callable, Iterator, List, MutableSequence, Protocol, Sequence, TypeVar, Union, overload
   3  
   4  _T = TypeVar("_T")
   5  _T_co = TypeVar("_T_co", covariant=True)
   6  
   7  class _Sampleable(Protocol[_T_co]):
   8      def __iter__(self) -> Iterator[_T_co]: ...
   9      def __len__(self) -> int: ...
  10  
  11  class Random(_random.Random):
  12      def __init__(self, x: object = ...) -> None: ...
  13      def seed(self, x: object = ...) -> None: ...
  14      def getstate(self) -> _random._State: ...
  15      def setstate(self, state: _random._State) -> None: ...
  16      def jumpahead(self, n: int) -> None: ...
  17      def getrandbits(self, k: int) -> int: ...
  18      @overload
  19      def randrange(self, stop: int) -> int: ...
  20      @overload
  21      def randrange(self, start: int, stop: int, step: int = ...) -> int: ...
  22      def randint(self, a: int, b: int) -> int: ...
  23      def choice(self, seq: Sequence[_T]) -> _T: ...
  24      def shuffle(self, x: MutableSequence[Any], random: Callable[[], None] = ...) -> None: ...
  25      def sample(self, population: _Sampleable[_T], k: int) -> List[_T]: ...
  26      def random(self) -> float: ...
  27      def uniform(self, a: float, b: float) -> float: ...
  28      def triangular(self, low: float = ..., high: float = ..., mode: float = ...) -> float: ...
  29      def betavariate(self, alpha: float, beta: float) -> float: ...
  30      def expovariate(self, lambd: float) -> float: ...
  31      def gammavariate(self, alpha: float, beta: float) -> float: ...
  32      def gauss(self, mu: float, sigma: float) -> float: ...
  33      def lognormvariate(self, mu: float, sigma: float) -> float: ...
  34      def normalvariate(self, mu: float, sigma: float) -> float: ...
  35      def vonmisesvariate(self, mu: float, kappa: float) -> float: ...
  36      def paretovariate(self, alpha: float) -> float: ...
  37      def weibullvariate(self, alpha: float, beta: float) -> float: ...
  38  
  39  # SystemRandom is not implemented for all OS's; good on Windows & Linux
  40  class SystemRandom(Random): ...
  41  
  42  # ----- random function stubs -----
  43  def seed(x: object = ...) -> None: ...
  44  def getstate() -> object: ...
  45  def setstate(state: object) -> None: ...
  46  def jumpahead(n: int) -> None: ...
  47  def getrandbits(k: int) -> int: ...
  48  @overload
  49  def randrange(stop: int) -> int: ...
  50  @overload
  51  def randrange(start: int, stop: int, step: int = ...) -> int: ...
  52  def randint(a: int, b: int) -> int: ...
  53  def choice(seq: Sequence[_T]) -> _T: ...
  54  def shuffle(x: MutableSequence[Any], random: Callable[[], float] = ...) -> None: ...
  55  def sample(population: _Sampleable[_T], k: int) -> List[_T]: ...
  56  def random() -> float: ...
  57  def uniform(a: float, b: float) -> float: ...
  58  def triangular(low: float = ..., high: float = ..., mode: float = ...) -> float: ...
  59  def betavariate(alpha: float, beta: float) -> float: ...
  60  def expovariate(lambd: float) -> float: ...
  61  def gammavariate(alpha: float, beta: float) -> float: ...
  62  def gauss(mu: float, sigma: float) -> float: ...
  63  def lognormvariate(mu: float, sigma: float) -> float: ...
  64  def normalvariate(mu: float, sigma: float) -> float: ...
  65  def vonmisesvariate(mu: float, kappa: float) -> float: ...
  66  def paretovariate(alpha: float) -> float: ...
  67  def weibullvariate(alpha: float, beta: float) -> float: ...
  68