Until now, you have had to leave your team management program running on your co
ID: 3585164 • Letter: U
Question
Until now, you have had to leave your team management program running on your computer indefinitely since you did not want to lose the list of players. Finally, you are ready to add the components to your team management program that will allow you to store the player’s information on your computer’s hard drive, thus, allow you to shut down your program without losing your data.
You will need to modify your program to:
1. include a Save option in the main menu which will prompt the program to write the player’s data to a text file.
2. modify the startup code so that the program calls a function that reads the player’s data from the text file into the list of member objects.
(HERE IS THE CODE I WROTE LAST WEEK)
(THE OUTPUT OF THE UPDATED PROGRAM SHOULD LOOK LIKE THIS:)
Welcome to the Team Manager
===========Main Menu===========
1. Display Team Roster.
2. Add Member.
3. Remove Member.
4. Edit Member.
5. Save Data.
6. Load Data.
9. Exit Program.
Selection> 2
Enter new member's name: Nathan
Contact phone number: 505-908-0670
Jersey number: 21
===========Main Menu===========
1. Display Team Roster.
2. Add Member.
3. Remove Member.
4. Edit Member.
5. Save Data.
6. Load Data.
9. Exit Program.
Selection> 2
Enter new member's name: Bobby
Contact phone number: 541-241-0670
Jersey number: 44
===========Main Menu===========
1. Display Team Roster.
2. Add Member.
3. Remove Member.
4. Edit Member.
5. Save Data.
6. Load Data.
9. Exit Program.
Selection> 5
Filename to save: members.txt
Saving data...
Data saved.
===========Main Menu===========
1. Display Team Roster.
2. Add Member.
3. Remove Member.
4. Edit Member.
5. Save Data.
6. Load Data.
9. Exit Program.
Selection> 9
Exiting Program...
C:>python week6.py
Welcome to the Team Manager
===========Main Menu===========
1. Display Team Roster.
2. Add Member.
3. Remove Member.
4. Edit Member.
5. Save Data.
6. Load Data.
9. Exit Program.
Selection> 1
No current members in memory.
===========Main Menu===========
1. Display Team Roster.
2. Add Member.
3. Remove Member.
4. Edit Member.
5. Save Data.
6. Load Data.
9. Exit Program.
Selection> 6
Filename to load: members.txt
Loading data...
Data Loaded Successfully.
===========Main Menu===========
1. Display Team Roster.
2. Add Member.
3. Remove Member.
4. Edit Member.
5. Save Data.
6. Load Data.
9. Exit Program.
Selection> 1
Name: Bobby
Phone: 541-241-0670
Jersey Number: 44
Name: Nathan
Phone: 505-908-0670
Jersey Number: 21
===========Main Menu===========
1. Display Team Roster.
2. Add Member.
3. Remove Member.
4. Edit Member.
5. Save Data.
6. Load Data.
9. Exit Program.
Selection>9
Exiting Program...
Explanation / Answer
class Members:
def __init__(self, name, phone, jerseynumber):
self.__name = name
self.__phone = phone
self.__jerseynumber =jerseynumber
def setname (self, name):
self.__name=name
def setphone (self,phone):
self.__phone=phone
def setjerseynumber (self,jerseynumber):
self.__jerseynumber=jerseynumber
def getname (self):
return self.__name
def getphone (self):
return self.__phone
def getjerseynumber (self):
return self.__jerseynumber
def displaydata(self):
print("")
print("Member information: ")
print("------------------------")
print("Name:", self.__name)
print("Phone Number:", self.__phone)
print("Jersey Number:", self.__jerseynumber)
def displayMenu():
try:
print("===========Main Menu===========")
print("1. Display Members.")
print("2. Add Member.")
print("3. Remove Member.")
print("4. Edit Member.")
print("5. Save Data.")
print("6. Load Data.")
print("9. Exit Program.")
print("")
return int(input("Selection> "))
except:
print ("input error")
def printMembers(team):
try:
if len(team)==0:
print ("No current members in roster.")
else:
for x in team.keys ():
team[x].displaydata()
except:
print ("unable to print members")
def addMember(team):
try:
newName= input("Enter new Member's name: ")
newPhone = int(input("Member's Phone Number: "))
newJerseynumber = input("Jersey Number: ")
team[newName] = Members(newName, newPhone, newJerseynumber)
except ValueError:
print("Input Error")
return team
def removeMember(team):
try:
removeName = input("Enter team member's name to be removed: ")
if removeName in team:
del team[removeName]
else:
print("Team Member not found.")
return team
except:
print("Error Please Try Again")
def editMember(team):
try:
oldName = input("Enter the name of the team member you want to edit: ")
if oldName in team:
newName = input("Enter the member's new name: ")
newPhone = int(input("Member's new phone number: "))
newJerseynumber = input("Member's new jersey number: ")
team[oldName] = Members(newName, newPhone, newJerseynumber)
else:
print("Name not found")
return team
except:
print ("Error Please Try Again")
def save(team):
name = input("Enter file name:")
file = open(name,"w")
for key,value in team.items():
line = key + " " + value.getname() + " " + str(value.getphone()) + " " + value.getjerseynumber()
file.writelines(line);
file.close()
def load(team):
name = input("Enter file name:")
file = open(name,"r")
for line in file:
list = line.split()
team[list[0]] = Members(list[1], int(list[2]), list[3])
file.close()
team = {}
print("Welcome to the Team Manager")
menuSelection = displayMenu()
while menuSelection != 9:
if menuSelection == 1:
printMembers(team)
elif menuSelection == 2:
team=addMember(team)
elif menuSelection == 3:
team=removeMember(team)
elif menuSelection == 4:
team=editMember(team)
elif menuSelection == 5:
save(team)
elif menuSelection == 6:
load(team)
menuSelection=displayMenu()
print("Exiting Program...")
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.