Я участвую в приложении python, которое будет работать на Mac и Windows, упакованном в исполняемые файлы с py2app и py2exe. Важно, чтобы все приложения всегда генерировали одинаковые случайные числа. Таким образом, случайный модуль всегда получает одно и то же семя.
Однако результаты работы random.shuffle () в Windows и Mac кажутся очень разными.
Есть ли способ убедиться, что всегда генерируются одни и те же случайные числа?
Код очень неинтересный:
import random
random.seed("ladygaga")
swaplist_odd = [n for n in range(len(clipboard)) if n % 2 != 0]
swaplist_even = [n for n in range(len(clipboard)) if n % 2 == 0]
random.shuffle(swaplist_odd)
random.shuffle(swaplist_even)
Идея состоит в том, чтобы перетасовать буфер и иметь возможность воссоздать исходный буфер, снова перетасовав.
Если процесс выполняется в одной операционной системе, проблем нет. Как только файлы буфера копируются в другую операционную систему, повторное создание оригинала завершается неудачей.