I have written two scripts Write.py
and Read.py
.
Write.py
opens friends.txt
in append mode and takes input for name
, email
,phone no
and then dumps the dictionary into the file using pickle.dump()
method and every thing works fine in this script.
Read.py
opens friends.txt
in read mode and then loads the contents into dictionary using pickle.load()
method and displays the contents of dictionary.
The main problem is in Read.py
script, it justs shows the old data, it never shows the appended data ?
Write.py
#!/usr/bin/python
import pickle
ans = "y"
friends={}
file = open("friends.txt", "a")
while ans == "y":
name = raw_input("Enter name : ")
email = raw_input("Enter email : ")
phone = raw_input("Enter Phone no : ")
friends[name] = {"Name": name, "Email": email, "Phone": phone}
ans = raw_input("Do you want to add another record (y/n) ? :")
pickle.dump(friends, file)
file.close()
Read.py
#!/usr/bin/py
import pickle
file = open("friends.txt", "r")
friend = pickle.load(file)
file.close()
for person in friend:
print friend[person]["Name"], "\t", friend[person]["Email"] , "\t", friend[person]["Phone"]
What must be the problem, the code looks fine. Can some one point me in the right direction ?
Thanks.