Seite 1 von 1

Mein erstes " Programm"

Verfasst: Samstag 26. August 2006, 14:20
von _-Ba$ics-_
Hallo,
ich bin vor 2 tagen mit python angefangen und bin in der neunten klasse also eigentlich fangen wir erst in der zehnten kalsse mit python an aber da ich mich sehr für python interresiere hab ich mich einfach mal versucht damit zu beschäftigen... dieses "Programm" :lol: ist zwar sehr billig aber ich finde für den anfang schon gut :D ich habe es in einer halben stunde gemacht
und jez möchte ich mich halt weiter durch python durcharbeiten und mit pygame anfangen ... ich würde mcih sehr über eure hilfe freuen :wink:

hier der quellcode :

Code: Alles auswählen

from turtle import *
from random import randrange

def herz ():
    width(30)
    color("red") 
    left(45)
    forward(50)
    right(45)
    forward(25)
    right(45)
    forward(50)
    right(45)
    forward(25)
    right(45)
    forward(150)
    right(90)
    forward(150)
    right(45)
    forward(25)
    right(45)
    forward(50)
    right(45)
    forward(25)
    right(45)
    forward(65)

print "Der etwas langweilige Malroboter von _-Ba$ics-_"
print "____________________________________________________"
print "" 
 


user = raw_input ("wie heisst du?\n")
print "hallo %s!" %user
print ""
print ""

frage1 = raw_input("Wie geht es dir? gut oder schlecht?\n")
print ""
def spiel():
    if frage1 != "gut":
        print "Oh dann lass ich dich mal besser allein!\nAuf Wiedersehen!"
        
    if frage1 == "gut":
        print "Das freut mich dann koennen wir ja ein bisschn plaudern ."
        frage2 = raw_input("willst du dass ich dir ein herz male?! ja/nein\n")
        print ""
        
        if frage2 != "ja":
            print "tzz,dann nich\nTschuess"
        if frage2 == "ja":
            tracer(1)
            herz()
            print "hier bitteschoen,%s :)" %user
            print "aber nun muss ich leider gehn ...\n bis bald mal" 
    
spiel ()

Verfasst: Samstag 26. August 2006, 14:38
von EnTeQuAk
Sieht ja ganz gut aus ;)

Ich finds lustig :D

Aber es macht die Arbeit einfacher, wenn dud as ganze in

die Code_Tags setzt... für Python gibt es da so etwas schönes:

Code: Alles auswählen

[code=py] 
print 'Hier kann Pythoncode stehen, er wird formatiert, und mit Syntaxhilightning versehen'
[/code]

Dann schaut dein Code, richtig eingerückt usw... so aus:

Code: Alles auswählen

from turtle import *
from random import randrange

def herz ():
    width(30)
    color("red")
    left(45)
    forward(50)
    right(45)
    forward(25)
    right(45)
    forward(50)
    right(45)
    forward(25)
    right(45)
    forward(150)
    right(90)
    forward(150)
    right(45)
    forward(25)
    right(45)
    forward(50)
    right(45)
    forward(25)
    right(45)
    forward(65)

print "Der etwas langweilige Malroboter von _-Ba$ics-_"
print "____________________________________________________"
print ""



user = raw_input ("wie heisst du?\n")
print "hallo %s!" %user
print ""
print ""

frage1 = raw_input("Wie geht es dir? gut oder schlecht?\n")
print ""
def spiel():
    if frage1 != "gut":
        print "Oh dann lass ich dich mal besser allein!\nAuf Wiedersehen!"

    if frage1 == "gut":
        print "Das freut mich dann koennen wir ja ein bisschn plaudern ."
        frage2 = raw_input("willst du dass ich dir ein herz male?! ja/nein\n")
        print ""

        if frage2 != "ja":
            print "tzz,dann nich\nTschuess"
        if frage2 == "ja":
            tracer(1)
            herz()
print "hier bitteschoen,%s Smile" %user
print "aber nun muss ich leider gehn ...\n bis bald mal"

spiel ()

Ich finds lustig wie gesagt. Hilfestellungen kann ich direkt net geben, da ich mit TK gar nichts am Hut habe.

MfG ChrissiG

Verfasst: Samstag 26. August 2006, 15:56
von Michael Schneider
Grützi,

wie putzig. :-) Ich habe auch noch nie mit Turtle programmiert. Wie bekomme ich denn das Herzchenfenster wieder geschlossen, ohne dass sich mein IDLE aufhängt? :shock:

Weiter so, Du bist auf dem richtigen Weg.
Vielleicht wäre das was für Dich: Ich habe damals in meiner Einführungswoche ein kleines Spiel programmiert, wo der Spieler durch einen Buchstaben dargestellt wird. Er muss sich in einem Raum bewegen, einen Schlüssel einsammeln und dann durch die Tür an der Seite des Raumes diesen verlassen. Und das nur auf der Eingabeaufforderung. :D

Grüße,
der Michel

Verfasst: Samstag 26. August 2006, 16:18
von gerold
Hi _-Ba$ics-_!

Willkommen im Python-Forum!

Bitte schließe deinen Code in Code-Tags ein.

Siehe Codehighlighting.

mfg
Gerold
:-)

PS: Du kannst deinen Beitrag noch einmal ändern, wenn du auf die [Edit]-Schaltfläche klickst.

Verfasst: Samstag 26. August 2006, 17:17
von jAN
Michael Schneider hat geschrieben:Wie bekomme ich denn das Herzchenfenster wieder geschlossen, ohne dass sich mein IDLE aufhängt? :shock:
gar net ^^
idle und turtle beißen sich...
schon oft genug probiert...

Verfasst: Samstag 26. August 2006, 17:34
von Michael Schneider
jAN hat geschrieben:
Michael Schneider hat geschrieben:Wie bekomme ich denn das Herzchenfenster wieder geschlossen, ohne dass sich mein IDLE aufhängt? :shock:
gar net ^^
idle und turtle beißen sich...
schon oft genug probiert...
Toll. Und das beim ersten Programm... ich kann seine kommenden gar nicht erwarten. ;)

Aber das Phänomen ist mir bei PyGame auch schon aufgefallen.

Grüße,
Michel

danke

Verfasst: Samstag 26. August 2006, 19:58
von _-Ba$ics-_
hallo
vielen dank für eure zahlreichen antworten
man kann das fenster schließen ohne dass sich idle aufhängt :wink:
aber dann müsst ihr auch noch python shell mitschließen ... etwas doof
aber so gehts
an michael schneider :
Michael Schneider:

Grützi,

wie putzig. Smile Ich habe auch noch nie mit Turtle programmiert. Wie bekomme ich denn das Herzchenfenster wieder geschlossen, ohne dass sich mein IDLE aufhängt? Shocked

Weiter so, Du bist auf dem richtigen Weg.
Vielleicht wäre das was für Dich: Ich habe damals in meiner Einführungswoche ein kleines Spiel programmiert, wo der Spieler durch einen Buchstaben dargestellt wird. Er muss sich in einem Raum bewegen, einen Schlüssel einsammeln und dann durch die Tür an der Seite des Raumes diesen verlassen. Und das nur auf der Eingabeaufforderung. Very Happy

Grüße,
der Michel
hast du dieses spiel mit pygame programmiert?
- könntest du mir vielleicht bei dem einstieg in die "pythonspielewelt"
helfen? ich würde mich freuen

Vielen Dank und mfG
_-Ba$ics-_

Verfasst: Samstag 26. August 2006, 20:48
von Hannes-Spz
@basics:
ich glaube, er meinte mit consolenspiel etwas in DER richtung:
<schlechteprogrammierung>

Code: Alles auswählen

reihen = [[],[],[],[]]
for i, reihe in enumerate(reihen):
    reihe = [leer for leer in 4*" "]
    reihen[i] = reihe
aktuellereihe = 0
ende=False
posx , posy =(0,0)
reihen[posy][posx] = "O"
while not ende:
    for reihe in reihen: print reihe
    richtung = raw_input("richtung (wasd): ")
    if richtung == "s":
        reihen[posy +1 ][posx]="O"#spieler in 'neue zeile verruecken'
        reihen[posy][posx]=" " #von alter zeile spieler loeschen
        posy += 1 #aktuelle pos um eins erhoehen
    # ...
    # alles andere HIER machen
    if richtung == "ende": ende=True
</schlechteprogrammierung>
aber um dir den mut nicht zu nehmen:
ich versuch auch gerade pygame zu verstehen und bin heute über die doku gekrochen, wobei einem versichert wurde, dass pygame gut beschrieben ist!
also einfach:

Code: Alles auswählen

import pygame
help(pygame)
und zudem gibt es ja noch die cookbooks von pygame, in denen man erklärt, wie man zb. den bildschirm auf "fullscreen" stellt ;)

und mit consolenprogrammen kann man auch sehr viel machen - vergiss das nicht! es muss nicht immer graphik dabei sein!!

liebe grüße
hannes

Verfasst: Sonntag 27. August 2006, 08:18
von _-Ba$ics-_
ja danke , das stimmt . ich hab nur noch ncih so viel vorkenntnis und war mir nich im begriff was man mit consolen alles amchn kann ;)

Verfasst: Sonntag 27. August 2006, 12:00
von Michael Schneider
Hannes-Spz hat geschrieben:@basics:
ich glaube, er meinte mit consolenspiel etwas in DER richtung:[...]
Bingo! Auch wenn meine Versuche nicht ganz so ausgefeilt waren. :-) Mal auf meinem Dienstnotebook nachsehen, ob ich es noch auftreiben kann...
Hannes-Spz hat geschrieben:aber um dir den mut nicht zu nehmen:
ich versuch auch gerade pygame zu verstehen und bin heute über die doku gekrochen, wobei einem versichert wurde, dass pygame gut beschrieben ist!
Dann wird es vielleicht wirklich mal Zeit für ein PyGame (bzw. Spieleprogrammierung) Forum, wo wir ein paar deutschsprachige Tutorials und Fragen posten können. Ich fange schonmal mit dem ersten an...

Grüße,
Michael

Verfasst: Sonntag 27. August 2006, 17:34
von _-Ba$ics-_
Ich hab jetzt mal versucht ein "consolenspiel" zu schreiben aber ich weiß irgendwie net wie ich das mache dass ich die schleife unterbreche sobald man auf ein bestimmtes feld kommt und es als ziel angezeigt wird ...

Vllt könnt ihr mir ja helfen , solange mach ich mit pygame weiter :lol: :D

MfG Ba$ics

Verfasst: Dienstag 26. September 2006, 14:38
von web
Hannes-Spz hat geschrieben:@basics:
ich glaube, er meinte mit consolenspiel etwas in DER richtung:
<schlechteprogrammierung>

Code: Alles auswählen

reihen = [[],[],[],[]]
for i, reihe in enumerate(reihen):
    reihe = [leer for leer in 4*" "]
    reihen[i] = reihe
aktuellereihe = 0
ende=False
posx , posy =(0,0)
reihen[posy][posx] = "O"
while not ende:
    for reihe in reihen: print reihe
    richtung = raw_input("richtung (wasd): ")
    if richtung == "s":
        reihen[posy +1 ][posx]="O"#spieler in 'neue zeile verruecken'
        reihen[posy][posx]=" " #von alter zeile spieler loeschen
        posy += 1 #aktuelle pos um eins erhoehen
    # ...
    # alles andere HIER machen
    if richtung == "ende": ende=True
</schlechteprogrammierung>
aber um dir den mut nicht zu nehmen:
ich versuch auch gerade pygame zu verstehen und bin heute über die doku gekrochen, wobei einem versichert wurde, dass pygame gut beschrieben ist!
also einfach:

Code: Alles auswählen

import pygame
help(pygame)
und zudem gibt es ja noch die cookbooks von pygame, in denen man erklärt, wie man zb. den bildschirm auf "fullscreen" stellt ;)

und mit consolenprogrammen kann man auch sehr viel machen - vergiss das nicht! es muss nicht immer graphik dabei sein!!

liebe grüße
hannes
hi
wie bekomm ich bei dem Code ein X in die untere rechte Reihe (also posy , posx = (3,3))

thx schonmal für die antworten ^^

web

Verfasst: Mittwoch 27. September 2006, 20:52
von Hannes-Spz
da ich das in dem beispiel in ner liste verpackt hab, müsste (!) es theopraktisch klappen, indem du "einfach" eingibst:

Code: Alles auswählen

reihen[3][3]="X"
und zwar nach:

Code: Alles auswählen

reihen = [[],[],[],[]]
for i, reihe in enumerate(reihen):
    reihe = [leer for leer in 4*" "]
    reihen[i] = reihe
(und vor dem eigentlichen programm wenn es zb. ein startpunkt darstellen soll...)

könnte jedenfalls klappen (nicht getestet)
liebe grüße an alle
hannes