В настоящее время я пытаюсь кэшировать много вещей в своей веб-игре. Это своего рода игра с ускорением, где у вас есть определенные разделы и она сохраняет каждую продолжительность для раздела в dict.Python - получить больше значений ключом, а не одним
Так прямо сейчас, у меня есть довольно длинный Dict:
dict = [{'account_id': '10', 'Damage': 4874, 'duration': 50.020756483078},
{'account_id': '10', 'Damage': 5920, 'duration': 20.020756483078},
{'account_id': '10', 'Damage': 2585, 'duration': 30.02078},
{'account_id': '4', 'Damage': 3145, 'duration': 21.020756483078},
{'account_id': '4', 'Damage': 4202, 'duration': 60.020756483078},
{'account_id': '4', 'Damage': 5252, 'duration': 66.020756483078}]
(Его гораздо больше, до 10 секций в течение ACCOUNT_ID, но я только что создал пример, чтобы использовать для этого вопроса)
Затем нам нужно присвоить те времена к ACCOUNT_ID
enterDict = {}
for x in dict :
enterDict[x["account_id"]] = x
Но когда я пытаюсь получить время из кэша, через
account_id = "4"
EnterInfo = enterDict[account_id]
print(EnterInfo)
Это возвращает только один
{ 'Damage': 5252, 'account_ID': '4', 'длительность': 66.020756483078}
В дополнение:
Если решить эту проблему , есть ли способ дать им заказ? Поскольку dicts все испортили.
Поэтому он должен начинаться с наименьшей продолжительности до верхней, так как это правильный правильный порядок.
Поэтому я мог бы использовать [0] для наименьшей продолжительности 21 [1] для 60 и [2] для 66. Я бы не возражал, если есть новый ключ: значение с «order»: «0», «порядок»: «1» и «порядок»: «2»
{'account_id': '4', 'Damage': 3145, 'duration': 21.020756483078},
{'account_id': '4', 'Damage': 4202, 'duration': 60.020756483078},
{'account_id': '4', 'Damage': 5252, 'duration': 66.020756483078}]