Ich versuche, diese beiden Codes zusammenzuführen, so dass das letzte Stück das Textdokument "Zahlungen" in eine Liste anhängen kann. Für jede Zeile von „Zahlungen“, ich will es in einer Liste in myList
, so würde es in etwa so aussehen:Zusammenfassen von zwei for-Schleifen unter einer if-Anweisung
myList = [['E1234','12/09/14','440','A','0']['E3431','10/01/12','320','N','120']['E0987','04/12/16','342','A','137']]
Ich mag den endgültige Code erstellen können, um den Benutzer aufzufordern, einen Kunden zu betreten Wählen Sie dann myList
für die Kundennummer und zeigen Sie alle Informationen für den Kunden auf dem Bildschirm an.
Dies ist das erste der beiden Programme. Es ist das "Rückgrat" des endgültigen Codes. Nennen wir das A:
print("Option A: Show a record\nOption Q: Quit")
decision = input("Enter A or Q: ")
if decision == "A" or decision == "a":
myFile = open("Payments.txt")
customer_number = input("Enter a customer number to view their details: ")
record = myFile.readlines()
for line in record:
if customer_number in line:
print(line)
myFile.close()
elif decision == "Q" or "q":
exit
Dies ist das zweite Stück Code. Lassen Sie uns dieses B nennen: if decision == "A" or decision == "a":
:
myFile = open("Payments.txt")
myList = []
for item in myFile:
print(item.strip())
myList.append(item.strip().split(','))
myFile.close()
print(myList)
I B in die if-Anweisung eingefügt werden soll.
Ich bin verwirrt über die for-Schleifen, wie es in einer for-Schleife A und B ist, sowohl die für den Endcode lebenswichtig sind. Ich bin nicht in der Lage, B in A zu platzieren, ohne eine der for-Schleifen zu unterbrechen.
print("Option A: Show a record\nOption Q: Quit")
decision = input("Enter A or Q: ")
myList = []
if decision == "A" or decision == "a":
myFile = open("Payments.txt")
customer_number = input("Enter a customer number to view their details: ")
record = myFile.readlines()
for line in record:
for item in myFile:
print(item.strip())
myList.append(item.strip().split(','))
print(myList)
if customer_number in line:
print(line)
myFile.close()
elif decision == "Q" or "q":
exit
Es zeigt die Linie, aus der die Kundennummer aus, aber es die Liste nicht gedruckt wird.
aktualisieren
Ich möchte die einzelnen Daten aus jeder Zeile separat drucken können:
Customer number: E1234
Date of payment: 12/09/14
Payment amount: £440
Paid amount: £0
Wenn ich richtig A nur zu verstehen, Details über die jeweiligen Kunden ausdruckt, aber was macht B?Einfach den Inhalt von Payments.txt ausdrucken? – Bijan
B fügt jede Zeile von Payments.txt zu einer einzelnen Liste in myList hinzu. Ich möchte B innerhalb der if-Anweisung in A, so dass es Zahlungen an myList anhängen, die customer_number in der Liste finden und diese bestimmte Zeile anzeigen wird – User0123456789
Also ist der ganze Zweck dieser die Zeile anzuzeigen, die customer_number enthält? Warum sollte man sich überhaupt mit 'myList' beschäftigen? – Bijan