Wie lässt man sich in Python einen bestimmten Wertebereich ausgeben?
Hallo Community,
ich habe mir über Python meine Internetgeschwindigkeit ausgeben lassen und durch 10^6 geteilt. Raus kam folgendes:
from speedtest import Speedtest
st = Speedtest()
download = st.download() / 1000000
upload = st.upload() / 1000000
print("Deine Downloadgeschwindigkeit ist: " + str(download))
print("Deine Uploadgeschwindigkeit ist: " + str(upload))
5.3457643545
Wie bekomme ich es hin, dass es mir nur die ersten 3 Zahlen ausgibt wie z.B.:
5.34
Vielen Dank im Voraus!
Mit freundlichen Grüßen
4 Antworten
Hi StarGamer007,
Mit der Funktion int(Zahl) kannst du nur den Typ der Variablen ändern, Dezimalstellen werden dabei komplett abgeschnitten.
zahl = 7.895
print(zahl)
print(int(zahl))
Output:
>>7.895
>>7
➖ ➖ ➖
Wenn du aber noch zwei Stellen nach dem Komma behalten willst, dann geht das so:
wert = 120.121
print(wert.round(2))
Cheers
Meinst du wirklich die ersten 3 zahlen?
Oder meinst du 2 stellen nach dem Komma?
Ich nehme an das letztere, das erstere macht keinen Sinn.
print("Deine Downloadgeschwindigkeit ist: {0:.2f}".format(download))
Oder sowas in die Richtung
Mit Stringformatierung.
https://docs.python.org/3/tutorial/inputoutput.html#formatted-string-literals
>>> bla = 3.141592
>>> f'Pi ist etwa {bla:.2f}.'
'Pi ist etwa 3.14.'
>>>
mit
round(upload, 3)
rundet auf drei Nachkommastellen