So, we want to make a program that stores some data we create on the fly when program is running and that we want to reuse when we open the program later?
The shelve module is our module, then.
This module creates a database and other 2 files,
First of all, let's import the module:
import shelve
like this
s = shelve.open("todo.db")
we can use s as a dictonary and preserve our data there.
If we, for example add this code
>>> a = input(What is your name?)
>>> what is your name?John
>>> s["name"] = a
and then we close the file
>>> s.close()
if we close the editor. Then we open it again and reopen the db,
>>> s = open("todo.py")
if we do digit
>>> print(s["name"])
we will see this output
John
So, we stored that data in the db
Let's make another example with a simple todo program
import shelve def todo(): print("Insert something x=close clear=clear") s = shelve.open("todo.db") ans = input("Task?>") if ans == "x": s.close() elif ans == "clear": s["tasks"] = "" todo() else: print("You have to:",ans) try: s["tasks"] += ans + "\n" print("Previous tasks:\n",s["tasks"]) except: s["tasks"] = ans + "\n" print("This is your first task") s.close() todo() todo()
Let's explain what this code does...
Here is the output (not very clear, but it gives the idea):
See you later...
Comments
Post a Comment