Keeping The Data Of A Variable Between Runs Of Code
Solution 1:
Simply pickle the data you want to keep persistent. Since your use case doesn't require very complex data storage, pickling is a very good option. A small example:
import pickle
word_list = ["cat", "hat", "jump", "house", "orange", "brick", "horse", "word"]
# do your thing here, like
word_list.append("monty")
# open a pickle file
filename = 'mypickle.pk'withopen(filename, 'wb') as fi:
# dump your data into the file
pickle.dump(word_list, fi)
Later when you need to use it again, just load it up:
# load your data back to memory when you need itwithopen(filename, 'rb') as fi:
word_list = pickle.load(fi)
Ta-da! You have data persistence now. More reading here. A few important pointers:
- Notice the
'b'
when I useopen()
to open a file. Pickles are commonly stored in a binary format, so you must open the file in a binary mode. - I used the
with
context manager. This ensures that a file is safely closed once all my work with the file is done.
Solution 2:
You have to use persistent storage: write the words in a file when you add them and retrieve them from this file when the program starts.
Solution 3:
If you exit the code you stop the process. For this reason you lose all data. You have to add the words keeping the script alive. The suggestion is to use a server that processing all your calls (example: http://flask.pocoo.org/) or to use the python command input (https://en.wikibooks.org/wiki/Python_Programming/Input_and_Output).
But remember... if you stop the process you lose all data, it is normal.
Otherwise, before stopping your script, you have to save all the data into a file or database and load them when the script starts.
Post a Comment for "Keeping The Data Of A Variable Between Runs Of Code"