python ValueError: could not convert string to float:?

Hanibal545  30.10.2022, 12:55

Was meinst du mit "String zu float machen"?

Meinst du den ASCII-Wert?

Steve7171 
Fragesteller
 30.10.2022, 12:56

wahrscheinlich

2 Antworten

float() kann eben nur String-Literale parsen. Für Brüche gibt es die Klasse Fraction. Damit kann man prima rechnen:

from fractions import Fraction
# ...
p = Fraction(p1)

Bei Bedarf (z. B. für die Ausgabe als Dezimalzahl) lässt sich ein Bruch auch in einen float() konvertieren.

Beim Umwandeln eines Strings in eine Zahl werden Ausdrücke nicht automatisch ausgewertet. Daher wird "1/6" nicht als Zahl erkannt.

Du müsstest den String analysieren, Zähler und Nenner (z.B. in zwei getrennte Variablen) extrahieren und diese dann durcheinander dividieren.

Oder einen fertigen "Parser" benutzen, es gibt davon einige im Netz …

Steve7171 
Fragesteller
 30.10.2022, 13:03

danke dir

0