У меня есть следующий список списков:
MyList = [[130, 10], [131, 15], [132, 1]]
Тогда у меня есть несколько входов. Если я получаю, например: Data = [130, 3], [135, 10]
, мне нужно обновить список следующим образом:
MyList = [[130, 3], [131, 15], [132, 1], [135, 10]]
Итак, если в MyList
уже есть подсписок, где первый элемент совпадает с первый элемент подсписка в Data
, обновить тот же элемент. Вместо этого, если его нет, добавьте его.
Мне удалось это сделать, но мне было интересно, есть ли более чистое решение, так как оно мне действительно не нравится:
Temp = [x[0] for x in MyList]
for x in Data:
if x[0] not in Temp:
Sublist = []
Sublist.append(x[0])
Sublist.append(x[1])
MyList.append(Sublist)
else:
for y in MyList:
if x[0] == y[0]:
x[1] = y[1]
Есть способ лучше сделать это? Я чувствую, что этот код можно улучшить, мне также не нравится редактировать элементы во время цикла. Приветствуется любая помощь!