2017-09-18 7 views
-2

Ich mache ein Programm, das ein mir Buchungen in eine Textdatei festlegen kann, die dann die Textdatei i mit meinem for-Schleife und meinen 2D-Array ein Problem habe jedoch aktualisiert unterWie man richtig Indizes einstellt?

newMemberArr = [] 
memberArr = [] 
def SetBookings(): 

NoNights = int(input("Please Enter the ammount of Nights you want to book, Max is 14")) 
NewPoints = NoNights * 1000 
Surname = str(input("Please Enter your surname")) 

with open("SampleData2017.txt", mode = "r", encoding = "utf-8") as Data: 
    for line in Data: 
     memberArr.append(line.split(",")) 

Der Code ist wo ich das Problem habe. es sagt, dass ‚i‘ vor der Zuweisung referenziert wird, aber wenn ich den Auftrag heißt es ändern, dass ‚Index‘ vor

index = memberArr.index(i) 
    for i in memberArr[index][1]: 

     if Surname in memberArr: 
      memberArr[index][4] = memberArr[index][4] + NoNights 
      memberArr[index][5] = memberArr[index][5] + NewPoints 

memberArr Zuordnung verwiesen wird, ist das 2D-Array, das die Daten innerhalb der Textdatei hält

+0

Was ist 'memberArr'? – Fejs

+1

Ja, nun, Sie verwenden eine Variable, bevor Sie einen Wert angegeben haben. Was ist deine Frage genau? – timgeb

+1

Können Sie ein Beispiel für die Eingabe geben? – Vinny

Antwort

2

iist auf der Linie vor der Zuweisung verwiesen wird:

index = memberArr.index(i) 

an dieser Stelle die Variable i nicht erklärt worden und hat keinen Wert zugewiesen hat - so Sie kann nicht seinen Wert verwenden (es hat keinen). Es hat nur einen Wert aus der nächsten Zeile ab:

for i in memberArr[index][1]: 

Es ist unmöglich, dir mehr eine spezifischere Antwort als das zu geben, da, wie wenig Informationen, die Sie zur Verfügung gestellt haben (zB was in memberArr enthalten ist, was ist index eigentlich gemeint sein, etc.)

Verwandte Themen