У меня есть этот множественный список
[['1', '228', '149'], ['2', '288', '129'], ['3', '270', '133'], ['4', '256', '141'], ['5', '256', '157'], ['6', '246', '157'], ['7', '236', '169'], ['8', '228', '169'], ['9', '228', '161']
И я хочу, чтобы результат находился в словаре, чтобы я мог позже взять наклон с этими местоположениями. Пример -> {1: (x1, y1), 2: (x2, y2), ...}
{1:(228,149), 2:(228,129), 3:(270,133),....., 9:(228, 161)}
Очень работоспособный способ, который я изучил благодаря этому вопросу:
Группировать список tuplas в словаре способа Гіptima в python
- с использованием defaultdict
. Исходя из твоего списка:
from collections import defaultdict
lista = [['1', '228', '149'], ['2', '288', '129'], ['3', '270', '133'], ['4', '256', '141'], ['5', '256', '157'], ['6', '246', '157'], ['7', '236', '169'], ['8', '228', '169'], ['9', '228', '161']]
d = defaultdict(tuple)
for clave, e1, e2 in lista:
d[int(clave)] = (int(e1), int(e2))
В этом случае d
valdrГ, - в которое ты ждешь:
{1: (228, 149), 2: (288, 129), 3: (270, 133), 4: (256, 141), 5: (256, 157), 6: (246, 157), 7: (236, 169), 8: (228, 169), 9: (228, 161)}
defaultdict
, так как asignació nd[int(clave)] = loquesea
creará так или иначе этот ключ, из-за того, что относится друг к другу о asignació n.defaultdict
- для того, чтобы ключ tambié n он верит, когда ты попробуешь прочитать ключ, который не существует, что обычно является случаем для, когда стоимость готовая и así смоги делатьdiccionario[clave].append(dato)
, так как если ключ не existí в, обработав информацию " leerla" сdiccionario[clave]
creará список vací в, на которой operació n.append()
уже podrá функционировать. – abulafia 21.09.2019, 14:50