Екатерина Худякова, группа 522 RndSwissknife 16676
Яковлев Никита 522 ВМК МГУ RndSwissknife 16468
f1from collections.abc import Sequence, Iterablef1from collections.abc import Sequence, Iterable
22
3def rnd(a, b=None):3def rnd(a, b=None):
4    match (a, b):4    match (a, b):
5        case [int(), None]:5        case [int(), None]:
6            return random.randint(0, a)6            return random.randint(0, a)
7        case [int(), int()]:7        case [int(), int()]:
8            return random.randint(a, b)8            return random.randint(a, b)
n9        case [float(), int() | float()]:n9        case [float(), float() | int()]:
10            return random.random() * (b - a) + a10            return random.random() * (b - a) + a
11        case [str(), int()]:11        case [str(), int()]:
n12            num = random.randint(0, len(a) - b)n12            start = random.randint(0, len(a) - b)
13            return a[num:num + b]13            return a[start:start + b]
14        case [str(), None]:14        case [str(), None]:
t15            return random.choice(a.split())t15            return random.choice(a.split(' '))
16        case [str(), str()]:16        case [str(), str()]:
17            return random.choice(a.split(b))17            return random.choice(a.split(b))
18        case [Iterable() | Sequence(), None]:18        case [Iterable() | Sequence(), None]:
19            return random.choice(list(a))19            return random.choice(list(a))
20        case [Iterable() | Sequence(), int()]:20        case [Iterable() | Sequence(), int()]:
21            return random.choices(list(a), k=b)21            return random.choices(list(a), k=b)
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op