Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Dictionary-Comprehension mit Bedingung | Listen- und Wörterbuchverständnisse
Python Loops Tutorial

bookDictionary-Comprehension mit Bedingung

In einer Dictionary Comprehension kann eine Bedingung hinzugefügt werden, um Elemente beim Erstellen des Dictionaries dynamisch zu filtern. Die Syntax für eine Dictionary Comprehension mit Bedingung lautet:

{key_expression: value_expression for item in iterable if condition}
12345678910111213141516
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] # Filter destinations within a $2500 budget using a for loop affordable_destinations = {} for city, country, budget in travel_wishlist: if budget <= 2500: # Check if the budget is within the limit affordable_destinations[city] = budget print(affordable_destinations)
copy

Dieser Code durchläuft die Liste travel_wishlist und prüft, ob das Budget für jedes Reiseziel kleiner oder gleich $2500 ist. Wenn die Bedingung erfüllt ist, werden die Stadt und das Budget dem Dictionary affordable_destinations hinzugefügt.

123456789101112
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] # Use dictionary comprehension to filter destinations affordable_destinations = {city: budget for city, country, budget in travel_wishlist if budget <= 2500} print(affordable_destinations) # Output: {'Paris': 2000, 'New York': 2500, 'Kyoto': 1500}
copy

Dieses Beispiel erzielt das gleiche Ergebnis wie das vorherige, jedoch auf eine prägnantere und elegantere Weise. Die Bedingung if budget <= 2500 filtert die Reiseziele basierend auf dem Budget, und das resultierende Dictionary enthält nur die erschwinglichen Reiseziele.

Note
Hinweis

Wenn Sie versuchen, nur zwei Variablen (city und budget) zu entpacken, kann Python jedes Element der Liste nicht korrekt verarbeiten, da jede Unterliste drei Elemente enthält (city, country und budget). Dies führt zu einem Fehler, da Python versucht, drei Elemente auf zwei Variablen zuzuweisen.

So würde es aussehen:

affordable_destinations = {city: budget for city, budget in travel_wishlist if budget <= 2500}

Dieser Code führt zu einem ValueError: not enough values to unpack (expected 2, got 3), da jedes Element in der Liste drei Werte enthält, Sie jedoch versuchen, nur zwei zu entpacken.

Aufgabe

Swipe to start coding

Ein Reisender möchte seine travel_wishlist filtern, sodass nur noch Reiseziele in Japan enthalten sind. Um dies effizient zu erreichen, sollen die relevanten Stadt-Budget-Paare in ein Dictionary extrahiert werden.

  • Filtern Sie die travel_wishlist, sodass nur Ziele mit dem Land "Japan" enthalten sind.
  • Speichern Sie das resultierende Dictionary in japanese_destinations.

Lösung

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 4
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

close

bookDictionary-Comprehension mit Bedingung

Swipe um das Menü anzuzeigen

In einer Dictionary Comprehension kann eine Bedingung hinzugefügt werden, um Elemente beim Erstellen des Dictionaries dynamisch zu filtern. Die Syntax für eine Dictionary Comprehension mit Bedingung lautet:

{key_expression: value_expression for item in iterable if condition}
12345678910111213141516
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] # Filter destinations within a $2500 budget using a for loop affordable_destinations = {} for city, country, budget in travel_wishlist: if budget <= 2500: # Check if the budget is within the limit affordable_destinations[city] = budget print(affordable_destinations)
copy

Dieser Code durchläuft die Liste travel_wishlist und prüft, ob das Budget für jedes Reiseziel kleiner oder gleich $2500 ist. Wenn die Bedingung erfüllt ist, werden die Stadt und das Budget dem Dictionary affordable_destinations hinzugefügt.

123456789101112
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] # Use dictionary comprehension to filter destinations affordable_destinations = {city: budget for city, country, budget in travel_wishlist if budget <= 2500} print(affordable_destinations) # Output: {'Paris': 2000, 'New York': 2500, 'Kyoto': 1500}
copy

Dieses Beispiel erzielt das gleiche Ergebnis wie das vorherige, jedoch auf eine prägnantere und elegantere Weise. Die Bedingung if budget <= 2500 filtert die Reiseziele basierend auf dem Budget, und das resultierende Dictionary enthält nur die erschwinglichen Reiseziele.

Note
Hinweis

Wenn Sie versuchen, nur zwei Variablen (city und budget) zu entpacken, kann Python jedes Element der Liste nicht korrekt verarbeiten, da jede Unterliste drei Elemente enthält (city, country und budget). Dies führt zu einem Fehler, da Python versucht, drei Elemente auf zwei Variablen zuzuweisen.

So würde es aussehen:

affordable_destinations = {city: budget for city, budget in travel_wishlist if budget <= 2500}

Dieser Code führt zu einem ValueError: not enough values to unpack (expected 2, got 3), da jedes Element in der Liste drei Werte enthält, Sie jedoch versuchen, nur zwei zu entpacken.

Aufgabe

Swipe to start coding

Ein Reisender möchte seine travel_wishlist filtern, sodass nur noch Reiseziele in Japan enthalten sind. Um dies effizient zu erreichen, sollen die relevanten Stadt-Budget-Paare in ein Dictionary extrahiert werden.

  • Filtern Sie die travel_wishlist, sodass nur Ziele mit dem Land "Japan" enthalten sind.
  • Speichern Sie das resultierende Dictionary in japanese_destinations.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 4
single

single

some-alt