Я понимаю, что при итерации через словарь он будет в произвольном порядке. Тем не менее, мне нужно убедиться, что к одному конкретному элементу обращается последний, и этот элемент имеет самый маленький ключ. Как мне это реализовать?Итерации через словарь в обратном порядке (Python)
Прямо сейчас, у меня есть
files["h"] = DIRECTORY["h"][0]
files["n"] = DIRECTORY["n"][0]
files["a"] = DIRECTORY["a"][0]
for key, file_dir in files.iteritems():
print ("Checking {0} in {1}".format(key, file_dir))
# process files
Словарь происходит с итерироваться в порядке «а», «з», «л». Мне нужно обработать «a» последним, потому что это зависит от файлов в «h» и «n».
Есть ли способ сделать это без запуска кода process files
дважды, один раз для «h» и «n», другой для «a»?
Произвольные средства «вне вашего контроля». Вы не можете заставить словарь дать вам что-либо в первую очередь или последним или каким-либо иным образом контролировать, в каком порядке он дает вам элементы. Если вы хотите, чтобы это было последним, сортируйте элементы и затем перебирайте отсортированный список. – BrenBarn