Arbeiten mit Zahlen in Listen

Abgeschlossen

Bisher haben Sie Planetennamen in einer Liste verwendet. Sie werden sich vielleicht fragen, wie Sie mit anderen Datentypen, z. B. Zahlen, arbeiten können.

Wussten Sie, dass die Schwerkraft auf anderen Planeten je nach Masse oder Größe des Planeten stärker oder schwächer ist? Die Schwerkraft wird häufig in G gemessen, wobei die Schwerkraft auf der Erde 1 und andere Planeten relativ zur Erde gemessen werden.

Die Schwerkraft auf dem Mond beträgt 0,166 G, weshalb Astronauten auf dem Mond so hoch springen können. Die Schwerkraft auf dem Neptun ist 1,12 G, daher ist das Springen schwieriger. Selbst die besten Athlet*innen hätten Mühe, auf dem Neptun über zwei Meter hoch zu springen.

Neptune as seen from Voyager 2 from 4.4 million miles, image credit NASA.

Speichern von Zahlen in Listen

Verwenden Sie den Typ float, um Zahlen mit Dezimalstellen in Python zu speichern. Um eine Gleitkommazahl zu erstellen, geben Sie die Zahl mit der Dezimalstelle ein und weisen sie einer Variablen zu:

gravity_on_earth = 1.0
gravity_on_the_moon = 0.166

Der folgende Code erstellt eine Liste, die die Gravitationskräfte aller acht Planeten des Sonnensystems in G anzeigt:

gravity_on_planets = [0.378, 0.907, 1, 0.377, 2.36, 0.916, 0.889, 1.12]

In dieser Liste ist gravity_on_planets[0] die Schwerkraft auf dem Merkur (0,378 G), gravity_on_planets[1] ist die Schwerkraft auf der Venus (0,907 G) usw.

Auf der Erde wiegt ein Doppelstockbus 124 054 Newton (N). Auf dem Merkur, wo die Schwerkraft 0,378 G beträgt, wiegt derselbe Bus 124 054 Newton multipliziert mit 0,378. In Python verwenden Sie das Symbol *, um zwei Werte zu multiplizieren.

Im folgenden Beispiel können Sie das Gewicht eines Doppeldeckerbusses auf verschiedenen Planeten berechnen, indem Sie den Wert aus der Liste übernehmen:

gravity_on_planets = [0.378, 0.907, 1, 0.377, 2.36, 0.916, 0.889, 1.12]
bus_weight = 124054 # in Newtons, on Earth

print("On Earth, a double-decker bus weighs", bus_weight, "N")
print("On Mercury, a double-decker bus weighs", bus_weight * gravity_on_planets[0], "N")
On Earth, a double-decker bus weighs 124054 N
On Mercury, a double-decker bus weighs 46892.4 N

Verwenden von min() und max() mit Listen

Python verfügt über integrierte Funktionen zum Berechnen der größten und kleinsten Zahlen in einer Liste. Die max()-Funktion gibt die größte und min() die kleinste Zahl zurück. Somit gibt min(gravity_on_planets) die kleinste Zahl in der Liste gravity_on_planets zurück: 0,377 (Mars).

Der folgende Code berechnet die minimalen und maximalen Gewichte im Sonnensystem mithilfe dieser Funktionen:

gravity_on_planets = [0.378, 0.907, 1, 0.377, 2.36, 0.916, 0.889, 1.12]
bus_weight = 124054 # in Newtons, on Earth

print("On Earth, a double-decker bus weighs", bus_weight, "N")
print("The lightest a bus would be in the solar system is", bus_weight * min(gravity_on_planets), "N")
print("The heaviest a bus would be in the solar system is", bus_weight * max(gravity_on_planets), "N")
On Earth, a double-decker bus weighs 124054 N
The lightest a bus would be in the solar system is 46768.35 N
The heaviest a bus would be in the solar system is 292767.44 N