Попробуйте короткий эксперимент.
random.choice(colors) выберет один элемент списка, а random.choices(colors, k=3) вернёт сразу три. Один цвет может попасться несколько раз: функция выбирает значения с повторениями.Затем вызовите
random.seed(5), получите несколько значений и повторите те же действия, снова установив seed в 5. Обе последовательности совпадут. Seed задаёт начальное состояние генератора псевдослучайных чисел, поэтому такой приём помогает воспроизводить ошибку и делать тесты предсказуемыми.Разбор функций random и secrets также объясняет границу: для паролей и токенов нужен модуль
secrets, который получает криптографически стойкую случайность от операционной системы.#python
