2017-02-02 4 views
1

Ich programmiere jetzt EKG-Signal mit Python und ich habe diesen Fehler Ich weiß nicht, wie ich es lösen kann.ValueError: Konnte Zeichenfolge nicht in Gleitkomma konvertieren: '-0,274697 n'

ValueError: could not convert string to float: '-0,274697\n'

enter image description here

+3

Bitte senden Sie Ihren Code ** als Text **, eine formatierte Block, in die Frage verwenden. Vielen Dank. – halfer

+0

in consol habe ich diese Datei "C: /Users/Imrane/Desktop/WinPython-64bit-3.5.2.3Qt5/settings/.spyder-py3/temp.py", Zeile 121, in rateKommentar Rückkehr float (datei. readline(). replace ('#', '')) ValueError: Konnte Zeichenfolge nicht in Gleitkomma konvertieren: '-0,274697 \ n' – Abdel

+0

Hallo Willkommen zu StackOverflow. Könnten Sie bitte Ihren Code eingeben, anstatt ihn in einem Bild zu haben. Außerdem, in welcher Zeile der Fehler auftritt. (Es gibt mehrere Konvertierungen, die in dem von Ihnen geposteten Code enthalten sind.) – cjds

Antwort

3

Okay, so dass Sie einen String mit einer , zu einer Gleitkommazahl konvertieren möchten.

In Python können Sie kein Komma in Ihrer Nummer haben, nur ein . wird unterstützt. So konvertieren es, können Sie diese Zeilen verwenden

datei= open(dateiname,'r') 
dateistr = datei.readline().replace(',','.') #replacing comma with . 
dateistr = dateistr.replace('#','') # replacing # with blank 
dateistr = dateistr.strip('\n') #remove the new line character at the end 
return float(dateistr) 
+0

Hoppla! Guter Fang. Mein Fehler – cjds

+1

Sie können einfach 'strip()' anstelle von 'strip ('\ n')' - es streift alle Leerzeichen automatisch – yedpodtrzitko

Verwandte Themen