Listeforståelser
Listeforståelser er en kraftfuld måde at skabe nye lister på ved at kombinere løkker og valgfrie betingelser i en enkelt, kortfattet erklæring. De giver en mere Pythonisk måde at udføre operationer på lister, hvilket gør din kode renere og lettere at læse.
Lad os starte med et simpelt eksempel. Du har en travel_wishlist
, der indeholder byer, du ønsker at besøge, hver repræsenteret som en indlejret liste med dens navn, land og rejseomkostninger.
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] city_names = [] # New empty list for city in travel_wishlist: city_names.append(city[0]) print(city_names)
Her gør listeforståelsen det samme job i en enkelt linje, hvilket gør det kortfattet og læsbart.
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] city_names = [city[0] for city in travel_wishlist] print(city_names)
travel_wishlist
er en liste af lister, hvor hver indre liste indeholder bynavn, land og estimeret budget for en rejse;Koden
[city[0] for city in travel_wishlist]
skaber en ny liste ved at udtrække det første element (city[0]
, bynavnet) fra hver indre liste itravel_wishlist
.
Swipe to start coding
Du administrerer en travel_wishlist
, hvor hver destination er repræsenteret som en liste, der indeholder flere detaljer. Dit mål er at udtrække kun rejseudgifterne fra hver destination og gemme dem separat.
- Iterer gennem ønskelisten, og få adgang til hver destinations detaljer.
- Udtræk rejseudgiften, som er det tredje element i hver destinations liste.
- Gem de udtrukne udgifter i en ny liste kaldet
trip_costs
.
Løsning
Tak for dine kommentarer!