Случайный номер Python Уникальный генератор чисел перед использованием новых номеров
Скажем, у меня есть случайные числа 0-9. Я хочу найти способ получить значения 0-9, но я не хочу повторять другое число, пока все остальные значения не будут использоваться равным количеством раз.
Ex. 4, 6, 5, 3, 0, 1, 9, 2, 7, 8, (rand number, потому что я использовал каждый другой номер один раз)
Есть ли эффективный способ сделать это?
- Случайный выбор двух элементов в списке
- Что такое хороший способ выбора случайных семян для научного эксперимента в Python
- Расширяемый генератор с предустановленными номерами – Python
- Выполнение задач в случайном порядке
- Получить случайный ключ: пары значений из словаря в python
Повторно перемешайте диапазон нужных чисел и соедините их:
import random numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] result = [] for i in range(100): random.shuffle(numbers) result.extend(numbers) print(result)
Или:
import random import itertools def generate_numbers(): numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] while True: random.shuffle(numbers) yield from numbers print(list(itertools.islice(generate_numbers(), 50)))
- Правильно ли говорить, что этот алгоритм O (n + m)?
- Как извлечь месяц из метки времени в кадре данных панд?
- Как вы можете выбрать случайный элемент из списка и удалить его?
- Выбор случайного слова на Python?
- Получить случайное логическое значение в python?
- Объединение двух образцов из numpy.random не заканчивается в случайной последовательности
- Случайное число, имеющее от 11 до 20 цифр
- Как мне перейти на случайный сайт? – python
- Как создать список не дублированных чисел (Python)
- отображать, сколько раз элемент был случайно выбран из списка в Python
- random.choice сломан с dicts