Я новичок в Python и пишу сценарий, в котором мы вводим некоторые данные в алгоритм, и он возвращает обнаруженный идентификатор данных вместе со значениями координат (x, y). Алгоритм продолжает возвращать обновленные значения координат до тех пор, пока данные не появятся, и как только данные исчезнут, он ничего не возвращает или какие-либо другие координаты данных.
Ниже приведен код:
data_dict = data_fetch.update(data)
возвращенный data_dict - это ordered dict, к которому я могу получить доступ, как показано ниже:
for (data_id, data_coord) in data_dict.items():
print(data_id) # to print the id of the data
print(data_coord) # to print the data coordinates
output:0{634, 972}
Мне нужно сохранить значения координат для каждого идентификатора в dict или в списке, чтобы, когда идентификатор данных больше не присутствует, я мог получить доступ ко всем значениям координат, то есть значениям x и y идентификатора данных, и построить его на графике, используя matplotlib.
points[data_id] = data_coord





Вы можете update словарь, чтобы вы могли сделать это:
from collections import OrderedDict
data_dict = OrderedDict()
# then do this as many times as required:
data_dict.update(data_fetch.update(data))
Возможно, вам не понадобится использовать OrderedDict, если порядок для вас не важен.
Если одни и те же координаты продолжают обновляться и вам нужны все значения, попробуйте следующее:
from collections import defaultdict
stored_values = defaultdict(list)
new_values = data_fetch.update(data)
for key,value in new_values.items():
stored_values[key].append(value)
Каждый ключ (id) будет хранить список всех координат.
Спасибо. Я пробовал это, и это продолжает обновлять data_dict, а не добавлять. Мне нужно сохранить все значения.
Значит, он продолжает обновлять координаты для одного и того же идентификатора, и вам нужно сохранить ВСЕ эти разные значения?
да, он продолжает обновлять одно и то же значение координаты идентификатора, и мне нужно сохранить все разные значения.
Добавлю к своему ответу.
Вы можете использовать json в качестве формата для сохранения ваших данных; очень просто сохранить Python dict как json. Но есть гораздо больше форматов, которые могут подойти для вашего случая; искать вокруг.