random.sample no longer accepts sets in Python 3.11 (#7528)

As of 3.11, population must be a Sequence. Automatic conversion of sets to lists is no longer supported.
This commit is contained in:
Harry
2022-03-22 01:58:22 +00:00
committed by GitHub
parent 71d14b3ee1
commit eb252afb18

View File

@@ -90,7 +90,9 @@ class Random(_random.Random):
k: int = ...,
) -> list[_T]: ...
def shuffle(self, x: MutableSequence[Any], random: Callable[[], float] | None = ...) -> None: ...
if sys.version_info >= (3, 9):
if sys.version_info >= (3, 11):
def sample(self, population: Sequence[_T], k: int, *, counts: Iterable[int] | None = ...) -> list[_T]: ...
elif sys.version_info >= (3, 9):
def sample(
self, population: Sequence[_T] | AbstractSet[_T], k: int, *, counts: Iterable[int] | None = ...
) -> list[_T]: ...