Insbesondere habe ich einige Funktionen, die Bevölkerungsdaten aus bestimmten Staaten in den USA aus einer CSV-Datei nehmen. Der Statuscode ist das erste [0] Element in der Liste, also AK, oder MS, MT, usw. Er wird als ein Tupel mit Dingen wie (Staat, Landkreis, Bevölkerung usw.) gespeichert und zu einer Liste hinzugefügt; Datenliste [].Wie nehmen Sie Daten aus einem Tupel nur, wenn sie ein bestimmtes Element enthalten?
Ich fordere dann eine Eingabe von entweder einem bestimmten Zustand oder die Option, alle Daten durch Eingabe von "alle" zu sehen. Wie gehe ich durch jedes Tupel und hänge nur die gewünschten Zustände an?
Hier ist, was ich bisher haben (beachten Sie, dass ich, bevor diese andere Funktionen zu tun haben, sowie eine main(), aber sie scheinen alle an dieser Stelle gut zu funktionieren:
STATES={'AK','AL','etc.','etc.'}
state = input("\nEnter state code or 'all' or 'quit': ")
def extract_data(data_list,state):
state_list=[]
for tup in data_list:
if state=="all":
state_list= data_list
if state in STATES:
if tup[0]==state:
state_list.append(tup)
print(state_list)
Wenn eine Klärung gibt es benötigt von anderen Funktionen, kann ich es zur Verfügung stellen, aber für den Moment gibt die Funktion nur alle Daten zurück, nicht nur den gewünschten Zustand.