Почему порядок итераций набора Python (с одинаковым содержимым) меняется от запуска к запуску, и каковы мои варианты обеспечения согласованности от цикла к запуску?
Я понимаю, что порядок итераций для набора Python произвольный. Если я помещаю «a», «b» и «c» в набор, а затем повторяю их, они могут возвращаться в любом порядке.
Я заметил, что порядок остается неизменным в прогоне программы. То есть, если моя программа повторяет один и тот же набор дважды подряд, я получаю один и тот же порядок оба раза. Однако, если я запускаю программу два раза подряд, порядок меняется от запуска к запуску.
К сожалению, это нарушает работу одного из моих автоматических тестов, который просто сравнивает выходные данные двух запусков моей программы. Меня не волнует фактический порядок, но я бы хотел, чтобы он был последовательным от запуска к запуску.
Лучшее решение, которое я придумал, это:
Есть ли более простое решение?
Примечание: я нашел похожие вопросы на StackOverlow, но ни один из них не касался этого конкретная проблема получения одинаковых результатов от цикла к запуску.