Предположим, у вас есть такие данные:
data = {
"list1": [[100, 101, 102], [110, 111, 112], [120, 121, 123]],
"list2": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
"list3": [[200, 201, 202], [210, 211, 212], [220, 221, 223]],
}
Если это домашняя работа, ваш учитель, вероятно, хочет, чтобы вы решили ее с помощью рекурсии, но я рекомендую использовать итерационную версию в Python, если вы не можете быть уверены, что не сложите более 999 вызовов:
fetch_element(data, listname, *indices):
value = data[listname]
for index in indices:
value = value[index]
return value
Тогда у вас есть список элементов, которые вы хотите:
desired = [
["list1", 0, 0],
["list2", 7],
["list3", 2, 2],
]
Теперь вы можете сделать:
>>> [fetch_element(data, *line) for line in desired]
[100, 7, 223]
Что совпадает с:
>>> [data["list1"][0][0], data["list2"][7], data["list3"][2][2]]
[100, 7, 223]