Seite 1 von 1

Double Werte aus Datei einlesen

Verfasst: Donnerstag 2. Juli 2009, 16:49
von redbomberle
Hallo zusammen,
bin neu hier im Forum und auch seid neuem dabei mit Python zu arbeiten.

Stehe vor einem ganz einfachen Problem:
Ich möchte Double Werte aus einer Datei einlesen, welche sich Zeilenweise in dieser Datei befinden.
Bisher habe ich folgendes gemacht:

Code: Alles auswählen

values = {}

data = open("C:/test/TestDaten/HA25022009_0065HA25022009_0065_signal3.csv", "r")

for line in data:
	line = line.strip()
	value = line.split(";")
	values.append(value[0])

data.close()
Aber das geht leider nicht. Die Tutorials die ich gefunden habe lesen zwar auch alle aus dateien die Werte aus, aber es funktioniert bei mir leider nicht


Datei.csv:
  • 133.9720001220703;
    201.41600036621094;
    320.739990234375;
    251.77000427246094;
Ich möchte dann mit den eingelesenen Werten weiterarbeiten :)

Verfasst: Donnerstag 2. Juli 2009, 17:51
von b.esser-wisser
1) Da steht scheinbar Text und nicht Doubles in deiner Datei (und .csv ist auch noch falsch - comma separated values)

2) sucht du vielleicht sowas:

Code: Alles auswählen

CSV_PATH="C:/test/TestDaten/HA25022009_0065HA25022009_0065_signal3.csv"
with open (CSV_PATH, "r") as data_file:
    data = [float(line.strip(" \t\r\n;")) for line in data_file]
oder was hast du mit dem dictionary vor?

Außerdem gibt's noch:
- das csv-Module
- int(), bzw. int(round()) falls du gar keine 'double'-Werte brauchst

hth, Jörg

Verfasst: Donnerstag 2. Juli 2009, 17:52
von busfahrer
Hallo

so auf die schnelle kann ich nur sagen das .append eine methode auf listen ist und du dein leeres "values" als Dictionary angelegt hast.

Also values = [] und nicht values = {}

Gruß...busfahrer

Verfasst: Freitag 3. Juli 2009, 10:39
von redbomberle
also vielen Dank euch beiden.

Das mit dem Dictionary hatte ich nicht verstanden, also wusste nicht dass sich darin nur string befinden dürfen.
Hatte dies aus den tutorials, in denen Wörter aus einem File eingelesen werden.

So wie ihr es beschrieben habt funktioniert jetzt alles!
Vielen Dank!

Verfasst: Freitag 3. Juli 2009, 10:51
von BlackJack
@redbomberle: In Dictionaries darf man auch andere Objekte ausser Zeichenketten stecken. Dictionaries haben keine `append()`-Methode und brauchen ausserdem immer einen Schlüssel und einen Wert. Am besten arbeitest Du mal das Tutorial aus der Python-Dokumentation durch.