У меня есть список этих словарей, и я хочу вернуть значения только из одного словаря на основе совпадающих ключей внутри другого списка или string.
Я хочу, чтобы он отражал dict с соответствующим индексом списка в качестве первой строки в другом списке.
Код: Выделить всё
group1 = {'1': [0, 0], '2': [2, 2], '3': [3, 3], '4': [4, 4], '5': [5, 5]}
group2 = {'1': [2, 2], '2': [0, 0], '3': [4, 4], '4': [5, 5], '5': [6, 6]}
group3 = {'1': [3, 3], '2': [4, 4], '3': [0, 0], '4': [6, 6], '5': [7, 7]}
group_selection = [group1, group2, group3]
example = ['2', '5', '3', '3', '1', '2']
groups_assigned = [group_selection[k] for k in example]
print(groups_assigned)
# Desired goal is [[0, 0], [6, 6], [4, 4], [4, 4], [2, 2], [0, 0]]
Код: Выделить всё
result = [groups_assigned[1][k] for k in example]
Для того, чтобы первое значение в списке было «2», оно должно возвращать значения диктов группы2 для всех оставшиеся строковые значения в списке из остальных ключей в этом словаре.
'1' будет относиться к группе 1, '2' будет относиться к группе 2 для справки.
['1' , '2', '4', '5'] = [[0, 0], [2, 2], [4, 4], [5, 5]]
и
[' 3', '1'] = [[0,0], [3, 3]]
Подробнее здесь: https://stackoverflow.com/questions/786 ... -or-string