У меня есть четыре словаря одинаковой длины.Сравнение нескольких словарей с конкретными значениями
Я хочу:
получить те ключи, которые подбираются между четырьмя.
Итерации по определенному значению в каждом словаре, который я буду сравнивать позже и выполнить некоторые арифметические операции.
Я сделал это с помощью вложенной петли (четыре петли), но это не выглядит эффективным. Я хочу сделать этот код более эффективным и элегантным.
Я хочу, чтобы сделать это, не делая вложенный цикл:
d1 = {1:18:[['28','Y','N'],['108','A','M'],...]
d2,d3 and d4 are the same thing expect different values but some will have same keys
for k, v in di1.iteritems():
for v1 in v:
for k2,v2 in di2.iteritems():
for va2 in v2:
if k == k2:
for k3,v3 in di3.iteritems():
for va3 in v3:
if k2 == k3:
for k4,v4 in di4.iteritems():
for va4 in v4:
if k3==k4 and k==k4 and k==k3:
# do some arithmetics on dictionary's values for all four dictionaries
Спасибо большого заранее.
1-буквенные имена переменных делают ваш код запутанным. – stark
Является ли d1 таким же, как di1? – stark
Я не понимал этого: «Итерации по определенному значению в каждом словаре, который я буду сравнивать позже, и выполните некоторые арифметические операции». Что вы имеете в виду, пример, пожалуйста? –