Код: Выделить всё
count = 1
def generate_random(self):
#constants from Linear Congruential Generator
#multiplier
a = 1103515245
#increment
c = 12345
#modulus
m = 2 ** 31
random_number = (a * count + c) % m
mapped_number = random_number % 2600000
letter = chr(65 + (mapped_number // 100000))
digits = f"{mapped_number % 100000:05d}"
count += 1
return f"{letter}{digits}"
Изменить: главное, что я ищу, - это не хранить каждую перестановку из-за проблем с памятью, если Я храню сотни тысяч или миллионы перестановок и хочу «случайную» генерацию, последовательность которой непредсказуема.
Подробнее здесь: https://stackoverflow.com/questions/789 ... duplicates