2016-12-08 4 views
0

Я создал графический интерфейс с wxPython, в котором я использую процесс для построения таблицы для подачи некоторых диаграмм при нажатии кнопки.Сохраните переменную, уже созданную после завершения процесса в python

Я строю таблицу, и я храню ее в переменной, чтобы использовать информацию для подачи диаграммы matplotlib.

Моя проблема заключается в том, что когда моя диаграмма закончена, на основе уже построенной таблицы, хранящейся в переменной, и процесс завершен, я теряю информацию об этой переменной, и мне нужно использовать ту же самую информацию, чтобы сделать мой график интерактивным (т. е. изменить график из строки в панель или в стеке или что-то еще), но единственным способом, который я нашел, является повторное выполнение процесса для создания таблицы снова и снова.

Есть ли способ использовать хранимую информацию этой переменной в других процессах/модулях/диаграммах? Я имею в виду, есть ли способ сохранить «активную» переменную независимо от того, был ли процесс, когда он был создан, был закончен?

Большое спасибо за ваше руководство :)

+1

я думаю, что вы ищете базу данных –

+1

Да, 'store' это в файле –

ответ

1

Это делается довольно легко с pickle module Вот простой рабочий пример

from pickle import dumps, loads 
a_variable = 15 # arbitrary value 

with open("a_file.txt", "wb") as fileobj: 
    # create a pickle string representation of the data 
    fileobj.write(dumps(a_variable)) 


# Then to load it from another process 

with open("a_file.txt", "rb") as fileobj: 
    # load the pickle string representation of the data 
    a_variable = loads(fileobj.read()) 
+1

Sweet! Работает с несколькими переменными. 'fileobj.write (dumps ([x, y, z]))' 'a, b, c = загрузки (fileobj.read())' –

+0

Большое спасибо за ваш ответ, я попробую прямо сейчас: D – user3313622

+0

как это сработало для вас? – user2682863

 Смежные вопросы

  • Нет связанных вопросов^_^