python auf mac

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
BlackJack

Beitragvon BlackJack » Montag 25. August 2008, 22:16

Pfade, der aktuelle Pfad eines Prozesses, und das `/` das Wurzelverzeichnis ist, ist eigentlich auf Windows, Linux, und Mac gleich. Bei Windows mit der Einschränkung, dass es pro Laufwerk ein Wurzelverzeichnis gibt, und nicht ein "globales", aber das ist hier ja nicht wichtig.

Insgesamt fehlen Dir offensichtlich ein paar Wissensgrundlagen wie Dein Betriebssystem unter der grafischen Oberfläche funktioniert. Das ist im Grunde ein BSD, also nicht so weit von Linux entfernt, und es ist kein spezielles Python-Wissen.
kaschu
User
Beiträge: 25
Registriert: Sonntag 25. Februar 2007, 14:15

Beitragvon kaschu » Dienstag 26. August 2008, 05:53

Ich arbeite mit einem Mac. Und ich kann Dir versichern, der Mac ist nicht "teilweise abgeschlossen".

Was genau ist nochmal Deine allgemeine Python-Frage?
goldfisch
User
Beiträge: 52
Registriert: Sonntag 17. August 2008, 19:52

Beitragvon goldfisch » Dienstag 26. August 2008, 21:54

blackjack hat schon recht, mir fehlen ein paar wissensgrundlagen zum betriebssystem. und ich habe nicht unbedingt ein python-problem sondern ein problem mit python und blender. die sollten zusammen arbeiten.

kaschu kann mir vielleicht helfen?
mein problem ist, dass ich nicht weiss, wo ich z.b. dateien oder scripts ablegen muss, damit blender sie finden kann. wenn ich in blender import os print os.getcwd() eingebe, gibt er den pfad / aus - und ich weiss nicht wo das ist.... ich dachte mit / sei derselbe ordner gemeint, in dem die blender-datei liegt aus der ich die abfrage starte.

wenn ich in blender
import csv
reader = csv.reader(open("test.csv", "rb"))
for row in reader:
for item in row:
print item

eingebe, dann findet er die datei test.csv nicht, obwohl diese datei im selben ordner liegt wie die blender und die python datei.
wo muss ich sie also hinlegen?
kaschu
User
Beiträge: 25
Registriert: Sonntag 25. Februar 2007, 14:15

Beitragvon kaschu » Dienstag 26. August 2008, 22:21

Wenn Du im Finder mit der rechten Maustaste die Datei "test.csv" anklickst, und Du den Menüpunkt "Informationen" anklickst, was wird Dir dann in der Zeile "Ort" angezeigt?

Wenn dort soetwas wie: "/Users/goldfisch/Documents" steht, versuche im Python Code dieses hier:


Code: Alles auswählen

import csv
reader = csv.reader(open("/Users/goldfisch/Documents/test.csv", "rb"))
for row in reader:
    for item in row:
        print item
Zuletzt geändert von kaschu am Donnerstag 28. August 2008, 06:19, insgesamt 1-mal geändert.
goldfisch
User
Beiträge: 52
Registriert: Sonntag 17. August 2008, 19:52

Beitragvon goldfisch » Donnerstag 28. August 2008, 00:04

hey danke - jetzt findet er wohl die datei - dafür hat er jetzt schon wieder ein neues problem. folgende fehlermeldung erscheint:

Traceback (most recent call last):
File "csv.py", line 4, in ?
_csv.Error: newline inside string

hat das was mit den einrückungen zu tun? oder hat das was mit der csv-datei zu tun?
ursprünglich war das eine excel-datei, die ich als csv-datei exportiert habe.
BlackJack

Beitragvon BlackJack » Donnerstag 28. August 2008, 06:24

Wie sieht die Datei bzw. die betreffende Zeile denn aus?
kaschu
User
Beiträge: 25
Registriert: Sonntag 25. Februar 2007, 14:15

Beitragvon kaschu » Donnerstag 28. August 2008, 06:32

goldfisch hat geschrieben:
Traceback (most recent call last):
File "csv.py", line 4, in ?
_csv.Error: newline inside string


Das wird entweder an der csv-Datei liegen, oder in der falschen Anwendung des csv-Readers (falscher Dialekt oder falsches Quoting).

Hast Du die Doku zum csv-Modul gelesen? Insbesondere: http://docs.python.org/lib/csv-fmt-params.html?
goldfisch
User
Beiträge: 52
Registriert: Sonntag 17. August 2008, 19:52

Beitragvon goldfisch » Donnerstag 28. August 2008, 22:10

keine ahnung, was mit zeile 4 sein soll. für mich sieht die aus wie alle anderen auch.

danke für den link auf die csv-fmt-params - gibts so was auch in deutsch. das fachenglisch finde ich ziemlich schwierig... :oops:
BlackJack

Beitragvon BlackJack » Freitag 29. August 2008, 05:52

Bist Du sicher das es Zeile 4 ist? Die 4 im Traceback bezieht sich auf den Quelltext und nicht auf die CSV-Datei!
kaschu
User
Beiträge: 25
Registriert: Sonntag 25. Februar 2007, 14:15

Beitragvon kaschu » Freitag 29. August 2008, 05:57

goldfisch
User
Beiträge: 52
Registriert: Sonntag 17. August 2008, 19:52

Beitragvon goldfisch » Freitag 29. August 2008, 14:19

auf zeile vier steht im script

for row in reader:


danke für die gute tat (für den link)! :D werde versuchen es zu verstehen...

die csv-datei sollte mit kommas getrennt sein - oder? wenn ich sie in textwrangler anschaue, dann sind dort ; gesetzt. macht das was aus? und wenn ja, wie kann ich das ändern? habe schon alle varianten von excel durchprobiert. es macht immer ; anstatt ,
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Beitragvon Rebecca » Freitag 29. August 2008, 14:37

Code: Alles auswählen

reader = csv.reader(open(...), delimiter=";")
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
goldfisch
User
Beiträge: 52
Registriert: Sonntag 17. August 2008, 19:52

Beitragvon goldfisch » Freitag 29. August 2008, 15:42

das habe ich soeben rausgefunden. eigentlich funktionierts
reader = csv.reader(open("versuch.csv","rb"), delimiter=";")
>>>
dann gebe ich ein
for row in reader:
print row


sollte er dann nicht den inhalt der datei ausgeben? - bei mir passiert gar nichts...
goldfisch
User
Beiträge: 52
Registriert: Sonntag 17. August 2008, 19:52

Beitragvon goldfisch » Freitag 29. August 2008, 15:53

vorher habe ich es in idle (ohne blender) versucht. dann wird python 2.5 benutzt. es passiert zwar nichts aber es gibt auch keine fehlermeldung.

wenn ich dasselbe script in blender mit python 2.3 ausführen lasse, gibt er mir folgende fehlermeldung:

File "csvreader.py", line 3
for row in reader:
^
SyntaxError: invalid syntax


auf linie drei steht: for row in reader
also liegts schon auch mal an den versionen. wie lautet der befehl in python 2.3 für for row in reader?
das python openbook ist blöderweise für python 2.5 und nicht für 2.3

wo kann ich rausfinden, wie es in 2.3 geschrieben werden muss?
kaschu
User
Beiträge: 25
Registriert: Sonntag 25. Februar 2007, 14:15

Beitragvon kaschu » Freitag 29. August 2008, 19:46

Zeig bitte mal Deine ganze "csvreader.py" Datei. So wie sie bei Dir gespeichert ist. Also mit allen Einrückungen. Anhand der mageren Informationen von Dir ist es schwierig bis unmöglich eine Ursache für die Fehlermeldung zu benennen. :roll:

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder