Hallo liebes Forum,
zwecks meiner Studienarbeit muss ich die Messwerte einer CSV-Datei auslesen, um die Messwerte später in verschiedenen Kombinationen zu plotten.
Zum Auslesen habe ich das CSV-Modul gefunden, das alle Strukturen einer CSV-Datei berücksichtigt. Folgenden Code hab ich geschrieben um erstmal die Messwerte auszulesen:
import csv
with open('LOG_0003.CSV') as f:
reader = csv.reader(f)
for row in reader:
print(row)
Nach dem Ausführen erhalte ich folgende Fehlermeldung:
Traceback (most recent call last):
File "C:/Users/"Benutzer"/PycharmProjects/Studienarbeit_Schraubprozesse/example_reader.py", line 3, in <module>
reader = csv.reader(f)
AttributeError: module 'csv' has no attribute 'reader'
Als Umgebung nutze ich Pycharm.
Die Kodierung der Datei ist wie in der Standard Library empfohlen UTF-8.
Ich habe auch schon verschiedene csv-Dateien aus unterschiedlichen Quellen versucht zu lesen.
In einer wurde per Komma getrennt, in einer per Semikolon.
Ich habe auch keine Datei mit dem Namen csv.py, welche statt der Library importiert wird.
Da es aus der Standard Library importiert wird, muss ich ja auch keine Library über Project Interpreter installieren.
Kann mir jemand weitere potentielle Fehlerquellen nennen oder einen Fehler in meinem bisherigen Vorgehen aufzeigen?
csv reader wird nicht ausgeführt
Moin,
gibt es einen Grund, warum du nicht `numpy` oder `pandas` zum Einlesen der Daten nimmst? Wenn du die Daten nicht nur plotten sondern auch damit rechnen willst, wird das mit einem darauf ausgelegten Paket sehr viel angenehmer.
Außerdem gilt hier wieder der allgemeine Rat, Programme nicht aus IDEs zu starten, weil da komische Sachen passieren. Wobei eine IDE eigentlich nicht das `csv`-Modul kaputt machen sollte. Was gibt
aus, wenn du es in der Shell bzw. in PyCharm startest?
gibt es einen Grund, warum du nicht `numpy` oder `pandas` zum Einlesen der Daten nimmst? Wenn du die Daten nicht nur plotten sondern auch damit rechnen willst, wird das mit einem darauf ausgelegten Paket sehr viel angenehmer.
Außerdem gilt hier wieder der allgemeine Rat, Programme nicht aus IDEs zu starten, weil da komische Sachen passieren. Wobei eine IDE eigentlich nicht das `csv`-Modul kaputt machen sollte. Was gibt
Code: Alles auswählen
import sys
print(sys.path)
import csv
print(csv)
Ich hab mir verschiedene Forenbeiträge durchgelesen. Aus Gründen der Einfachheit wurde hier in der Regel immer der csv Reader gegenüber Spandas' empfohlen. Da ich mir zunächst einmal ein Bild über meine Messwerte machen möchte war das dann für mich die naheliegenste Lösung. Mein Ziel ist allerdings anhand von Schwellwerten oder eines signifikanten Verlaufes der Messwerte den Betriebszustand des gemessenen Werzeugs zu bestimmen. Würdest du mir in dem Fall zu 'pandas' oder 'numpy' raten?
Meine Ausgabe mit der Shell:
['C:/Python36-32', 'C:\\Python36-32\\Lib\\idlelib', 'C:\\Python36-32\\python36.zip', 'C:\\Python36-32\\DLLs', 'C:\\Python36-32\\lib', 'C:\\Python36-32', 'C:\\Python36-32\\lib\\site-packages']
<module 'csv' from 'C:\\Python36-32\\lib\\csv.py'>
Meine Ausgabe mit Pycharm:
C:\Users\"Benutzername"\PycharmProjects\Studienarbeit_Schraubprozesse\venv\Scripts\python.exe C:/Users/"Benutzername"/PycharmProjects/Studienarbeit_Schraubprozesse/Messdaten_BoschXDK_einlesen.py
['C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\Scripts\\python36.zip', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\DLLs', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\lib', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\Scripts', 'C:\\Python36-32\\Lib', 'C:\\Python36-32\\DLLs', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\lib\\site-packages']
<module 'csv'>
Process finished with exit code 0
Meine Ausgabe mit der Shell:
['C:/Python36-32', 'C:\\Python36-32\\Lib\\idlelib', 'C:\\Python36-32\\python36.zip', 'C:\\Python36-32\\DLLs', 'C:\\Python36-32\\lib', 'C:\\Python36-32', 'C:\\Python36-32\\lib\\site-packages']
<module 'csv' from 'C:\\Python36-32\\lib\\csv.py'>
Meine Ausgabe mit Pycharm:
C:\Users\"Benutzername"\PycharmProjects\Studienarbeit_Schraubprozesse\venv\Scripts\python.exe C:/Users/"Benutzername"/PycharmProjects/Studienarbeit_Schraubprozesse/Messdaten_BoschXDK_einlesen.py
['C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\Scripts\\python36.zip', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\DLLs', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\lib', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\Scripts', 'C:\\Python36-32\\Lib', 'C:\\Python36-32\\DLLs', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv', 'C:\\Users\\"Benutzername"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\lib\\site-packages']
<module 'csv'>
Process finished with exit code 0
Ich hatte anfangs eine Datei die mit csv....py begonnen hat. Die habe ich dann allerdings umbenannt, nachdem ich gelesen habe, dass sonst die Datei statt der Library aufgerufen wird.__deets__ hat geschrieben:Hast du irgendwann mal eine Datei csv.py selbst erstellt?
Meine Ausgabe mit der Shell:__deets__ hat geschrieben:Was gibt “import csv; print (csv.__path__)” aus?
Code: Alles auswählen
Traceback (most recent call last):
File "C:/Python36-32/beispielcsv++.py", line 2, in <module>
print (csv.__path__)
AttributeError: module 'csv' has no attribute '__path__'
Code: Alles auswählen
C:\Users\"Benutzer"\PycharmProjects\Studienarbeit_Schraubprozesse\venv\Scripts\python.exe C:/Users/"Benutzer"/PycharmProjects/Studienarbeit_Schraubprozesse/example_reader.py
['C:\\Users\\"Benutzer"\\PycharmProjects\\Studienarbeit_Schraubprozesse\\venv\\lib\\site-packages\\csv']
Process finished with exit code 0
- noisefloor
- User
- Beiträge: 3857
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
was gibt denn
[codebox=pycon file=Unbenannt.txt]>>> import csv
>>> csv.__file__[/code]
Damit solltest du den Speicherpfad sehen.
Gruß, noisefloor
was gibt denn
[codebox=pycon file=Unbenannt.txt]>>> import csv
>>> csv.__file__[/code]
Damit solltest du den Speicherpfad sehen.
Gruß, noisefloor
Wegen einer wichtigen Prüfung musste ich eine Pause einlegen und komme deshalb leider jetzt erst zum antworten.
Ich habe alle Python Versionen und Entwicklungsumgebungen deinstalliert und danach nochmal neu installiert. Jetzt läuft es einwandfrei. Evtl haben sich die Kofigurationen der unterschiedlichen Versionen gegenseitig blockiert, aber das ist nur meine Vermutung.
Vielen Dank für die Ratschläge und Hilfestellungen!
Meine Ausgabe:noisefloor hat geschrieben:Hallo,
was gibt denn
[codebox=pycon file=Unbenannt.txt]>>> import csv
>>> csv.__file__[/code]
Damit solltest du den Speicherpfad sehen.
Gruß, noisefloor
Code: Alles auswählen
C:\Users\"Benutzername"\Anaconda3\python.exe C:/Users/"Benutzername"/PycharmProjects/Studienarbeit_Schraubprozesse/test2.py
Process finished with exit code 0
Das hatte ich bereits umbenannt, sodass es es nicht mehr anstatt der Library geöffnet wird. Ich habe es danach auch gelöscht, was leider auch nicht geholfen hat.__deets__ hat geschrieben:Na dann lösch mal das csv.pyc das da noch rumliegt.
Ich habe alle Python Versionen und Entwicklungsumgebungen deinstalliert und danach nochmal neu installiert. Jetzt läuft es einwandfrei. Evtl haben sich die Kofigurationen der unterschiedlichen Versionen gegenseitig blockiert, aber das ist nur meine Vermutung.
Vielen Dank für die Ratschläge und Hilfestellungen!