Ich habe Probleme, die Benutzereingabe in meine Liste zu schreiben. Was mache ich hier falsch? Dies ist ein Adressbuch-Programm, das ich schreibe, die Aufgabe besteht darin, parallele Listen zu erstellen, die Benutzereingabedaten in der entsprechenden Liste speichern, wobei eine For- oder While-Schleife verwendet wird. Das Programm muss auch eine Suchfunktion haben, die Sie am Ende des Codes sehen können. Mein Problem, das ich habe, ist, dass das Programm Daten in meinen Listen speichert. Leider sind Listen etwas, was mir viel Ärger bereitet, ich kann es einfach nicht fassen, egal wie viel Recherche ich gemacht habe. Das Problem, auf das ich stoße, ist die Funktion append.data, wenn ich versuche, Nachname und Vorname in meine Namensliste zu schreiben. Was mache ich falsch?Ich versuche, ein Adressbuch-Programm zu erstellen, das Benutzereingaben an die entsprechende Liste anfügt.
#NICHOLAS SHAFFER
#5/11/2016
#MYADDRESSBOOK
def menu():
index = 0
size = 100
count = 0
answer = raw_input("Are You Creating An Entry [Press 1] \nOr Are You Searching An Entry [Press 2] ")
if answer == "1" :
print ("This is where we create")
append_data(index, size, count)
elif answer == "2" :
print ("this is where we search")
search_database()
name[size]
phone[size]
addresss[size]
# IF we are creating
def append_data(index, size, count):
# collect information
for index in range(0, 100):
optOut = 'no'
while optOut == 'no':
lastname[count] = raw_input("What is the persons last name? ")
firstname[count] = raw_input("What is the persons first name? ")
phone[count] = raw_input("What id the persons phone number? ")
address[count] = raw_input("What is the persons address? ")
count = count + 1
print 'Would you like to create another entry?'
optOut = raw_input('Would you like to create another entry? [ENTER YES OR NO]:')
if optOut == 'yes':
menu()
#create string to print to file
#print temp1
#print (firstname + " " + lastname + ", " + phone + ", " + email + ", " + address)
print listName[index]
print listPhone[index]
print listAddress[index]
print 'file has been added to your addressbook sucessfuly'
menu()
# SEARCHING FOR A RECORD
def search_database():
searchcriteria = raw_input("Enter your search Criteria, name? phone, or address etc ")
print searchcriteria
if searchcriteria == "name":
temp1 = open(listName[lastname, firstname],"r")
print temp1
if searchcriteria == "phone":
temp1 = open(listPhone[0], "r")
print temp1
if searchcriteria == "address":
temp1 = open(listAddress[0], "r")
print temp1
else:
print "sorry you must enter a valid responce, try again."
menu()
for line in temp1:
if searchcriteria in line:
print line
errorMessage()
# USER DID NOT PICK CREATE OR SEARCH
def errorMessage():
print ("Incorrect Answer")
exit()
menu()
Bitte expliziter über das Problem: was Sie zu tun versuchen, was tun Sie passieren erwarten, was stattdessen passiert? –
Erstellen Sie einen Eintrag [Drücken Sie 1] Oder suchen Sie einen Eintrag [Drücken Sie 2] 1 Hier erstellen wir Wie lautet der Nachname der Person? sha Traceback (letzter Anruf zuletzt): Datei "C: \ Benutzer \ SChool LAB 4-1 \ addressbook.py", Zeile 84, in Menü() Datei „C: \ Benutzer \ SChool LAB 4 -1 \ addressbook.py ", Zeile 14, im Menü append_data (Index, Größe, Anzahl) Datei" C: \ Benutzer \ SChool LAB 4-1 \ addressbook.py ", Zeile 34, in append_data Nachname [Anzahl ] = raw_input ("Wie lautet der Nachname der Person?") NameError: Der globale Name 'Nachname' ist nicht definiert >>> –
Es tut mir leid für die Grausamkeit einer Antwort Ich bin neu in dieser Community. –