lol,
eines passt bei mir noch nicht: Es gehen die Befehle "forward()", "left()", "right()", "backward()", aber die Befehle "pensize()" und pencolor()" gehen nicht. Hier kann es vllt ja auch sein, dass nur die Befehle anders heißen, als in meinem Buch.
Danke,
lukas
xTurtle und Mac
Kann es sein, dass Du das "normale" Turtle-Modul benutzt und nicht dass aus dem Buch?
-
- User
- Beiträge: 16
- Registriert: Samstag 13. Oktober 2007, 18:16
achso, ja, das stimmt, ich habe ja jetzt das andere
,sry.
Gibts ne dt. Übersicht füt die normale?
![Embarassed :oops:](./images/smilies/icon_redface.gif)
Gibts ne dt. Übersicht füt die normale?
Hallo,
also ich habe alles auf meinem Macbook mit dem Intel-Prozessor installiert. Wenn ich dann im Standard Idle xTurtle importiere kommt keine Fehlermeldung, aber das Grafikfenster öffnet sich auch nicht. Woran kann das liegen?
also ich habe alles auf meinem Macbook mit dem Intel-Prozessor installiert. Wenn ich dann im Standard Idle xTurtle importiere kommt keine Fehlermeldung, aber das Grafikfenster öffnet sich auch nicht. Woran kann das liegen?
Lukas the brain hat geschrieben:Ok, ich habe alles von neu gemacht.
Ich habe von ActiveSate die Tcl und ActivePython runtergeladen.
Dann habe ich es isntalliert.
Und Dann kann man es unter /Library/Frameworks/Python.framework/Versions/2.5/Resources/ aufrufen und ein Alias fürs Dock oder den Schreibtisch oder so machen. Oder mit cd /PfadzumentpacktenVerzeichnisvon/xturtle und dann python -i xturtleDemo.pyaus dem Terminal starten.
Gruß
Du musst erst noch einen Befaehl eintippen. Import allein reicht nicht aus, damit sich das Fenster öffnet.
-
- User
- Beiträge: 16
- Registriert: Samstag 13. Oktober 2007, 18:16
der Befehl ist
Hast du auch xturtle runtergeladen und das dann Version/2.5/python2.5/site-packages/ reingetan? Der Ordner muss nur xturtle heißen.
Code: Alles auswählen
from xturtle import*
- Rebecca
- User
- Beiträge: 1662
- Registriert: Freitag 3. Februar 2006, 12:28
- Wohnort: DN, Heimat: HB
- Kontaktdaten:
Ausserdem hat bigalex ja gesagt, dass er das Modul schon importiert hat. Ich habe xturtle nicht, aber bei der normalen Turtle-Version geht das Fenster erst auf, wenn man tatsaechlich etwas zeichnet. Also z.B.:
Code: Alles auswählen
>>> import turtle
>>> turtle.forward(20)
Offizielles Python-Tutorial (Deutsche Version)
Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
DAs mit dem einfrieren tritt häufig bei xturtle ein. Keine Ahnung warum.
Natürlich geht es auch ohne ein Extraprogramm, neue Pfade für eigene Module in Python und Mac OS X einzubinden.
Leider unterstützt das Buch Mac gar nicht.
Wie schon von gerold trotz fehlendem Erfahrung mit dem Mac richtig erkannt hat, so ist es wohl am einfachsten, eigene Module in einen Ordner zu verschieben, welcher schon im sys.path ist.
Da die IDLE für 2.6 noch nicht für Mac funktioniert, aufgrund eines Tk-Fehlers , habe ich es nur mit der normales 2.5.2 IDLE getestet und mit der Mac-Konsole alias "Terminal".
Mit 2.6 und dem Terminal sind folgende Pfade schon nach der Installation in der sys.path:
/Library/Frameworks/Python.framework/Versions/2.6/lib/python26.zip
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-darwin
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac/lib-scriptpackages
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-old
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-dynload
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages
mit der 2.5 IDLE gibt es folgende schon vorhandene Pfade:
/Users/Virus/Documents
/Applications/Python 2.6/IDLE 25.app/Contents/Resources
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/setuptools-0.6c5-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/py2app-0.3.6-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/bdist_mpkg-0.4.3-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/macholib-1.1-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/modulegraph-0.7-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/altgraph-0.6.7-py2.5.egg
/Applications/Python 2.6/IDLE 25.app/Contents/Resources
/Library/Frameworks/Python.framework/Versions/2.5/lib/python25.zip
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-darwin
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-mac
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-mac/lib-scriptpackages
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-tk
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-dynload
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/wx-2.8-mac-unicode
Das ist nach der frischen Installation. Ich habe das volle zip-Paket von python.org genommen.
Sooo,
um aber nun zum eigentlichen Problem zurück zu kommen; es reichen 2 Dateien auf der Buch-CD: "xturtle.py" und "xturtle.cfg_". Das Erstere ist das Modul und das Letztere die Voreinstellungen für die Größe des Fensters etc., welche du, für die Standardeinstellungen zu "xturtle.cfg umbenennen musst.
Diese beiden kannst du einfach markieren, mit Apfel+C kopieren und mit Apfel+V in den Ordner z.B.
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-tk
(geht unter Leopard, ansonsten per Mauszeiger kopieren)
kopieren.
Nun lässt sich im eigenen Programm "import xturtle" verwenden.
Es gibt noch weitere Möglichkeiten:
Um seinen eigenen Pfad zu verwenden, schreibe am Anfang deines Programms folgende Zeilen:
import sys
sys.path.append("$")
ABER anstatt des $-Zeichens schreibst du deinen eigenen Pfad vom ORDNER. Also falls du dein Modul "mytools.py" laden willst. Packe es in den Ordner deiner Wahl... passenderweise "mylib".
Mac OS X geht standartmäßig von deiner Partition aus, auf welcher das Betriebssystem läuft.
Unterordner werden mit "/" angesprochen.
Bei mir steht z.B.:
import sys
sys.path.append("/Library/Python/mylib")
Alles was ich dann selbst brauche, packe ich in den "mylib"-Ordner.
Nun war es mir aber zu blöd vor jedem Programm, welches meine Module verwendet, diese 2 Zeilen anzufügen.
Also muss Standardmäßig in diesem Ordner alles geladen werden.
Dies geschiet, indem man selbst eine .py-Datei schreibt mit diesen 2 Zeilen.
Das ist jetzt das witzige dadran.
Diese 2 Zeilen, welche du nicht an jedes Programm anhängen willst, sind jetzt in einem Programm geschrieben und du nennst es wie du willst. Es muss nicht sitecustomize.py heißen!
Tja ich habe es trotzdem so genannt mich aber sogar anfangs verschrieben, daher weiß ich es ist nicht relevant.
Jetzt kannst du dieses Programm in einen beliebigen Ordner packen der schon standardmäßig geladen wird und schon wird dein Programm auch geladen und damit auch alle Programme die in dem Ordner welche in diesem Befehl stehen.
Falls du mehr als einen Ordner hinzufügen willst schreibe einfach mehrmals den Befehl "sys.path.append("$") oder hänge mehere Strings an.
Bei mir hat es wunderbar geklappt.
Eine Datei angelegt, die customize.py heißt und in lib-tk"-Ordner geworfen, hatte es auch mal p.py genannt und in einen anderen vorgegeben Ordner getan und hat auch geklappt.
Falls es Probleme gibt:
Benennt die Datei sitecustomize.py .
Verschiebt "sitecustomize.py" in den Ordner
"/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-tk" .
Oder halt 2.6 anstatt 2.5.
Hoffe geholfen zu haben.
Leider unterstützt das Buch Mac gar nicht.
Wie schon von gerold trotz fehlendem Erfahrung mit dem Mac richtig erkannt hat, so ist es wohl am einfachsten, eigene Module in einen Ordner zu verschieben, welcher schon im sys.path ist.
Da die IDLE für 2.6 noch nicht für Mac funktioniert, aufgrund eines Tk-Fehlers , habe ich es nur mit der normales 2.5.2 IDLE getestet und mit der Mac-Konsole alias "Terminal".
Mit 2.6 und dem Terminal sind folgende Pfade schon nach der Installation in der sys.path:
/Library/Frameworks/Python.framework/Versions/2.6/lib/python26.zip
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-darwin
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac/lib-scriptpackages
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-old
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-dynload
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages
mit der 2.5 IDLE gibt es folgende schon vorhandene Pfade:
/Users/Virus/Documents
/Applications/Python 2.6/IDLE 25.app/Contents/Resources
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/setuptools-0.6c5-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/py2app-0.3.6-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/bdist_mpkg-0.4.3-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/macholib-1.1-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/modulegraph-0.7-py2.5.egg
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/altgraph-0.6.7-py2.5.egg
/Applications/Python 2.6/IDLE 25.app/Contents/Resources
/Library/Frameworks/Python.framework/Versions/2.5/lib/python25.zip
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-darwin
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-mac
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-mac/lib-scriptpackages
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-tk
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-dynload
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/wx-2.8-mac-unicode
Das ist nach der frischen Installation. Ich habe das volle zip-Paket von python.org genommen.
Sooo,
um aber nun zum eigentlichen Problem zurück zu kommen; es reichen 2 Dateien auf der Buch-CD: "xturtle.py" und "xturtle.cfg_". Das Erstere ist das Modul und das Letztere die Voreinstellungen für die Größe des Fensters etc., welche du, für die Standardeinstellungen zu "xturtle.cfg umbenennen musst.
Diese beiden kannst du einfach markieren, mit Apfel+C kopieren und mit Apfel+V in den Ordner z.B.
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-tk
(geht unter Leopard, ansonsten per Mauszeiger kopieren)
kopieren.
Nun lässt sich im eigenen Programm "import xturtle" verwenden.
Es gibt noch weitere Möglichkeiten:
Um seinen eigenen Pfad zu verwenden, schreibe am Anfang deines Programms folgende Zeilen:
import sys
sys.path.append("$")
ABER anstatt des $-Zeichens schreibst du deinen eigenen Pfad vom ORDNER. Also falls du dein Modul "mytools.py" laden willst. Packe es in den Ordner deiner Wahl... passenderweise "mylib".
Mac OS X geht standartmäßig von deiner Partition aus, auf welcher das Betriebssystem läuft.
Unterordner werden mit "/" angesprochen.
Bei mir steht z.B.:
import sys
sys.path.append("/Library/Python/mylib")
Alles was ich dann selbst brauche, packe ich in den "mylib"-Ordner.
Nun war es mir aber zu blöd vor jedem Programm, welches meine Module verwendet, diese 2 Zeilen anzufügen.
Also muss Standardmäßig in diesem Ordner alles geladen werden.
Dies geschiet, indem man selbst eine .py-Datei schreibt mit diesen 2 Zeilen.
Das ist jetzt das witzige dadran.
Diese 2 Zeilen, welche du nicht an jedes Programm anhängen willst, sind jetzt in einem Programm geschrieben und du nennst es wie du willst. Es muss nicht sitecustomize.py heißen!
Tja ich habe es trotzdem so genannt mich aber sogar anfangs verschrieben, daher weiß ich es ist nicht relevant.
Jetzt kannst du dieses Programm in einen beliebigen Ordner packen der schon standardmäßig geladen wird und schon wird dein Programm auch geladen und damit auch alle Programme die in dem Ordner welche in diesem Befehl stehen.
Falls du mehr als einen Ordner hinzufügen willst schreibe einfach mehrmals den Befehl "sys.path.append("$") oder hänge mehere Strings an.
Bei mir hat es wunderbar geklappt.
Eine Datei angelegt, die customize.py heißt und in lib-tk"-Ordner geworfen, hatte es auch mal p.py genannt und in einen anderen vorgegeben Ordner getan und hat auch geklappt.
Falls es Probleme gibt:
Benennt die Datei sitecustomize.py .
Verschiebt "sitecustomize.py" in den Ordner
"/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-tk" .
Oder halt 2.6 anstatt 2.5.
Hoffe geholfen zu haben.
Die Verwendung des xturtle-Moduls hat sich mit Python 2.6 faktisch erledigt, weil es im turtle-Modul von 2.6 aufgegangen ist. Anders gesagt: Das, was bisher das xturtle-Modul war (und zwar die deutlich überarbeitete und erweiterte Version 0.95a) ist jetzt das Standard Turtle-Modul von Python.
Oh cool, das wusste ich gar nicht.
Trotzdem funktioniert Tkinter noch nicht mit Mac OS X.
Von daher hat sich es noch nicht erledigt für Mac-User
.
Zudem habe ich es noch nicht geschafft eine Interaktive Python Shell zu erstellen mit dem Mac...
Werde da die nächsten Tage mal schauen wie es geht.
Falls es jemand weiß, kann er es gerne hier rein schreiben.
Trotzdem funktioniert Tkinter noch nicht mit Mac OS X.
Von daher hat sich es noch nicht erledigt für Mac-User
![Sad :(](./images/smilies/icon_sad.gif)
Zudem habe ich es noch nicht geschafft eine Interaktive Python Shell zu erstellen mit dem Mac...
Werde da die nächsten Tage mal schauen wie es geht.
Falls es jemand weiß, kann er es gerne hier rein schreiben.