До версии Python 3.7 словари были неупорядоченными, что вероятнее всего в твоем случае и является проблемой. Или используй
OrderedDict, или обнови Python до версии не ниже 3.7
P.S. Не заметил одну важную деталь, у тебя в словаре
Difficulties
не словарь с названиями сложности, а множество, вот пример:
In [1]: foo = {'foo': {'1', '2', '3', '4', '5'}}
In [2]: foo
Out[2]: {'foo': {'1', '2', '3', '4', '5'}}
In [3]: type(foo['foo'])
Out[3]: set
А они в любой версии Python неупорядоченные,
вот документация по ним.
Используй список:
"Difficulties": [
"Легкий",
"Нормальный",
"Трудный",
"Невозможный"
]
In [1]: foo = {"Difficulties": [
...: "Легкий",
...: "Нормальный",
...: "Трудный",
...: "Невозможный"
...: ]}
In [2]: for f in foo['Difficulties']:
...: print(f)
...:
Легкий
Нормальный
Трудный
Невозможный