Ich habe gerade angefangen, Python zu lernen. Ich muss eine CSV-Datei Daten in eine Liste von Tupeln speichern: Tupel, um die Werte in jeder Zeile darzustellen, Liste, um alle Zeilen zu speichern. Die Funktion, mit der ich Probleme habe, ist, wenn ich die Liste filtern muss. Erstellen Sie im Grunde eine Kopie der Liste mit den Kriterien, die den Kriterien entsprechen. Ich habe alle Tupel erfolgreich an eine Liste angehängt, aber wenn ich die Tupel in eine neue Liste einfügen muss, funktioniert es nicht.Python 3, wie Tupel in die Liste eingefügt werden
def filterRecord():
global filtered
filtered = list()
try:
if int(elem[2])>= int(command[-1]): #the condition
#if I print(elem) here, all results are correct
filtered.append(tuple(elem)) #tuples do not add into the list
#len(filtered) is 0
except ValueError:
pass
def main():
infile = open('file.csv')
L = list()
for line in infile:
parseLine() #a function store each row into tuple
for line in stdin:
command = line.split() #process user input, multiple lines
for elem in L:
if command == 0:
filterRecord()
Wenn ich es ausführen, reagiert das Programm nicht. Wenn ich es stoppe, ist das Traceback immer for line in stdin
Außerdem darf ich das csv-Modul in diesem Programm nicht verwenden.
was ist das Filterkriterium? –
@WillemVanOnsem wenn elem [2] mehr oder gleich einer Zahl ist, die der Benutzer eingegeben hat –