Seite 1 von 1

Wie vergrößere ich einen Schriftzug in einem Pythonprogramm

Verfasst: Samstag 13. Dezember 2008, 20:03
von leevi
Hallo,
ich bin grade erst im ersten Lehrjahr Informatik und komme jetzt schon nicht mehr richtig mit...
Im Moment sollen wir ein Weihnachtsbild mit Python /Trurtle erstellen. Soweit hab ich alles. ich möchte nur noch gere einen schönen Schriftzug Mit "Frohe Weihnachten" miteinbringen. Schreiben kann ich es ja, aber die Schrift ist einfach zu klein. Kann mir vielleicht jemand sagen, wie ich die Schrift vergrößern kann?
Bitte um Antwort :)
Danke im Vorraus

Re: Wie vergrößere ich einen Schriftzug in einem Pythonprogr

Verfasst: Samstag 13. Dezember 2008, 20:29
von numerix

Code: Alles auswählen

import turtle

turtle.write("Hallo",font=("Arial",20,"normal"))

Verfasst: Sonntag 14. Dezember 2008, 12:25
von leevi
Danke, aber wenn ich das eingebe kommt bei mir eine Fehleermeldung:

>>> Traceback (most recent call last):
File "C:\Python25\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 310, in RunScript
exec codeObject in __main__.__dict__
File "C:\Dokumente und Einstellungen\lisa\Eigene Dateien\Python\Weihnachtsprojekt 11.12.08.py", line 213, in <module>
bild(40,10,70,-240,-250)
File "C:\Dokumente und Einstellungen\lisa\Eigene Dateien\Python\Weihnachtsprojekt 11.12.08.py", line 209, in bild
write("Hallo",font=("Arial",20,"normal"))
TypeError: write() got an unexpected keyword argument 'font'


helft mir, ich brauch hilfe :D

Dankeschön für die Antwort

Verfasst: Sonntag 14. Dezember 2008, 12:38
von cofi
Kann das sein, dass du ein paar böse Sternchenimporte hast? Wenn ja, hast du das Turtle `write' überschrieben.
=> `from module import *' abgewöhnen

Verfasst: Sonntag 14. Dezember 2008, 12:47
von leevi
?? versteh ich nicht, ich hab gedacht man muss immer am anfang ganz oben schreiben
from turtle import*
sonst funktioniert das doch nicht oder? kann mir denn jetzt jemand sagen, was ich falsch gemacht habe, bzw. was ich machen muss?

Verfasst: Sonntag 14. Dezember 2008, 12:52
von Leonidas
leevi hat geschrieben:?? versteh ich nicht, ich hab gedacht man muss immer am anfang ganz oben schreiben
from turtle import*
sonst funktioniert das doch nicht oder?
Nein, wie du in numerix' Code siehst soll man es mit ``import turtle`` importieren.

Verfasst: Sonntag 14. Dezember 2008, 12:57
von leevi
ich merk grad wieder wie dumm ich bin :D
also muss ich den schrifzug vor turtle import schrieben?

Verfasst: Sonntag 14. Dezember 2008, 13:01
von Leonidas
Nein, denn zu musst ja den Namen ``turtle`` irgendwo herbekommen und dazu ist ja ``import`` da.

Verfasst: Sonntag 14. Dezember 2008, 13:04
von leevi
okay das versteh ich ja soweit... aber was mach ich jetzt mit
write('...')
ich habe es in die Hauptdefinition geschrieben... und dabei kommt nichts heraus.. er zeichnet alles nur zum Schluss das nicht

Verfasst: Sonntag 14. Dezember 2008, 13:04
von numerix
leevi hat geschrieben:ich merk grad wieder wie dumm ich bin :D
also muss ich den schrifzug vor turtle import schrieben?
Wenn du Python < 2.6 nutzt, lässt sich die Schriftart/-größe in turtle nicht einstellen. Bis dahin war das turtle Modul kaum zu gebrauchen und write() kennt keinen Schlüsselwortparameter font. Seit 2.6 ist turtle aber das, was bis dahin xturtle war und es funktioniert so, wie ich es oben gezeigt habe.

Verfasst: Sonntag 14. Dezember 2008, 13:09
von leevi
Achso, also kann ich das kit dem Schriftzug theoretisch vergessen?
Ich bruahc ihn ja nur größer, weil er sonst nicht auffällt, also macht das garkeinen Sinn weiter zu fragen?
ich bin am Anfang davon ausgegangen, dass man die Schriftgröße auch mit widthe ändern kann...
ja ich benutze 2.6
...

Verfasst: Sonntag 14. Dezember 2008, 13:20
von Leonidas
leevi hat geschrieben:Achso, also kann ich das kit dem Schriftzug theoretisch vergessen?
Du hast doch Python 2.6, wo ist das Problem?

Verfasst: Sonntag 14. Dezember 2008, 13:25
von numerix
leevi hat geschrieben:ja ich benutze 2.6...
Gemäß deinem Traceback oben benutzt du Python 2.5 ...

Verfasst: Sonntag 14. Dezember 2008, 13:33
von leevi
erlich gesagt, weiß ich auchnicht wo das Problem liegt. ich mein, dass ich 2.6 benutze...
aber es funktioniert halt nicht.. naja auch egal

Verfasst: Sonntag 14. Dezember 2008, 13:55
von Hyperion
leevi hat geschrieben:erlich gesagt, weiß ich auchnicht wo das Problem liegt. ich mein, dass ich 2.6 benutze...
Meinen ist nicht gleich wissen ;-)

Code: Alles auswählen

python -V (oder unter Win vermutlich python.exe -V)
hilft hier weiter.
Wie numerix schon richtig bemerkte sagt der Traceback, dass Du 2.5 benutzt. Evtl. stimmen da PATH-Einstellungen bei dir nicht (sofern Du Windows nutzt)?
aber es funktioniert halt nicht.. naja auch egal
Die Vermutung liegt doch nahe, dass es an der falschen Version von Python liegt ... wieso deswegen nun die Flinte ins Korn werfen?

Verfasst: Sonntag 14. Dezember 2008, 14:05
von leevi
ja schon wahr.. :)
ich hab Windows XP
und eine andere Python version kann ich nicht nehmen, weil wir die, die ich benutze in der Schule auch verwenden. Zuhause sollen wir die gleiche nehmen..

Verfasst: Sonntag 14. Dezember 2008, 14:11
von Hyperion
Man merkt irgend wie, dass Du Schüler bist und dazu gezwungen wirst, Dich mit Python zu befassen ...

Welche Infos hat Dein Post gerade gebracht? Eigentlich keine! Ok, wir wissen jetzt, dass Du dieselbe Version nutzen sollst, wie in der Schule und dass Du Win XP nutzt. Das trägt zur Problemlösung nichts bei, da wir immer noch nicht wissen, welche Version Du nutzt! (Mal davon abgesehen, dass wir die der Schule auch nicht kennen ;-) )

Du hast ja bereits gelesen, dass man nur unter 2.6 die Schrift vergrößern kann. Also stell einfach fest, welche Version Du hast und nehmen darfst / sollst! (wäre ja für die Entwicklung von Hausaufgaben zu Hause generell wichtig und eines der ersten Dinge, die ich mal geklärt hätte!)

Sollte dabei 2.6 rauskommen, bau einfach die Lösung ein, die Dir genannt wurde. Bei 2.5 geht es dann wohl schlicht nicht!

Verfasst: Sonntag 14. Dezember 2008, 14:16
von leevi
Ich WILL mich ja mit Python befassen. Mir macht`s ja auch Spaß. Ich versteh nur nicht alles. Und das ist ja das Problem.
Ich benutze die 2.5.2 Version, also klappt es nicht, das habe ich im vorletzten Eintrag ja auch schon bemerkt. Deshalb hab ich ja auch geschreiben, dass es egal ist.
Ich habe mein Problem "gelöst" indem ich den Schriftzug einfach mehrmals in klein eingebaut habe. So sieht`s schon nicht mehr so leer aus.
Aber danke für die Antworten

Verfasst: Sonntag 14. Dezember 2008, 16:36
von numerix
Ich vermute ja mal stark, dass "die Schule" euch auch vorschreibt, dass es mit turtle gemacht werden muss. Falls nicht, gibt es (für Python 2.5/2.6) auch Alternativen zum alten turtle-Modul:

Code: Alles auswählen

import xturtle

xturtle.write("Hallo",font=("Arial",20,"normal")
oder

Code: Alles auswählen

import frog

tafel = frog.Pool()
stift = frog.Frog(tafel)
stift.font = "Arial", 20, "normal"
stift.write("Hallo")
tafel.ready()
Beide Module gehören allerdings nicht zur Standardbibliothek und müssen zusätzlich installiert werden, wobei das "Installieren" in beiden Fällen damit getan ist, dass du die Datei xturtle.py bzw. frog.py in den Python-Unterordner "site-packages" kopierst.

xturtle: http://xturtle.rg16.at/
frog: http://pypi.python.org/pypi/frog/0.87