У меня есть список словарей, таких как:Оптимальный алгоритм для сравнения двух словарей в Python 3
Stock=[
{'ID':1,'color':'red','size':'L','material':'cotton','weight':100,'length':300,'location':'China'},
{'ID':2,'color':'green','size':'M','material':'cotton','weight':200,'length':300,'location':'China'},
{'ID':3,'color':'blue','size':'L','material':'cotton','weight':100,'length':300,'location':'China'}
]
И другой список словарей, таких как:
Prices=[
{'color':'red','size':'L','material':'cotton','weight':100,'length':300,'location':'China'}
{'color':'blue','size':'S','weight':500,'length':150,'location':'USA', 'cost':1$}
{'color':'pink','size':'L','material':'cotton','location':'China','cost':5$},
{'cost':5$,'color':'blue','size':'L','material':'silk','weight':100,'length':300}
]
Так что мне нужно найти «стоимость» для каждой записи в Stock
от Prices
. Но может быть ситуация, когда я не нахожу 100% совпадений элементов dict, и в этом случае мне нужен самый похожий элемент и получить его «стоимость».
output=[{'ID':1,'cost':1$},{'ID':2,'cost':5$},...]
Пожалуйста, подскажите оптимальное решение для этой задачи. Я думаю, что это похоже на Loop от наивысшего до самого низкого соответствия, когда мы пытаемся найти запись с максимальным совпадением, а если не нашли - попробуйте выполнить меньшее условие соответствия.
Stion. Для данного входа (акции и цены), какой должен быть желаемый результат? – ppasler