Variable von einem def in ein anderes def bringen

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.
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Variable von einem def in ein anderes def bringen

Beitragvon Andyh » Mittwoch 9. Januar 2008, 20:16

Hallo

Ja ich habe schon wieder ein problem mit def:
Alle def´s sind in einer Schleife.
Wenn ich es so mache kommt die Variable nicht in das nächste def:

Code: Alles auswählen

def bsp1():
    b == 2

def bsp2():
    print str (2)


Gruß
Andyh
BlackJack

Beitragvon BlackJack » Mittwoch 9. Januar 2008, 20:31

Ich sehe da ($GOTT sei Dank) keine Schleife um die ``def``-Anweisungen, weil das *sehr* wahrscheinlich ziemlicher Unsinn wäre.

Arbeite doch mal das Tutorial in der Python-Dokumentation, dann lernst Du auch etwas über Funktionen, Argumente, und Rückgabewerte.

Dass das `b` nicht einfach so überall zur Verfügung steht, ist gerade einer der Gründe Funktionen zu verwenden.
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Mittwoch 9. Januar 2008, 20:31

Du musst die Variable als Parameter übergeben.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Beitragvon Andyh » Mittwoch 9. Januar 2008, 20:33

Hallo

@BlackJack
ist ja auch nur ein Beispiel, ich wollte nicht den ganze code hier rein machen.

@Leonidas
Wie mache ich das?

Gruß
Andyh
Darii
User
Beiträge: 1177
Registriert: Donnerstag 29. November 2007, 17:02

Beitragvon Darii » Mittwoch 9. Januar 2008, 20:34

Also die "defs"(lass doch mal das arme accent aigu in Ruh’) sind Funktionen. Aber was willst du überhaupt machen? Geht das nicht auch ohne Funktionen?
Benutzeravatar
Trundle
User
Beiträge: 591
Registriert: Dienstag 3. Juli 2007, 16:45

Beitragvon Trundle » Mittwoch 9. Januar 2008, 20:38

Andyh hat geschrieben:Wie mache ich das?

Code: Alles auswählen

def bsp1():
    bsp2(2)

def bsp2(b):
    print b
bsp1()

Und ``b == 2'' macht glaub auch nicht unbedingt das, was du denkst, dass es macht. Und, wie BlackJack meinte, das Tutorial durchzuarbeiten wäre vermutlich auch nicht ganz die schlechteste Idee.
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Beitragvon Andyh » Mittwoch 9. Januar 2008, 20:42

Also ich mache ein spiel (so ähnlich wie "wer wird Millionär")

Jede frage ich eine def
fast am Ende der def wird die Variable "speichern" gesetzt mit dem namen der def.

Wenn man dann in Spielmenü wechselt und dann auf Speichern geht wird eine Datei mit dem inhalt der Variable "speichern" geschrieben

Tutorial wird morgen abgearbeitet.
Darii
User
Beiträge: 1177
Registriert: Donnerstag 29. November 2007, 17:02

Beitragvon Darii » Mittwoch 9. Januar 2008, 20:48

Sehr löblich mit dem Tutorial.

Wegen deinem Spiel: Da würden sich ein dictionary oder ein Liste eher anbieten als hunderte von Funktionen.

btw: Und das „def“ ist immer noch eine Funktion!
Benutzeravatar
Hobbes Hobson
User
Beiträge: 42
Registriert: Sonntag 9. Dezember 2007, 15:24
Wohnort: Bremen

Beitragvon Hobbes Hobson » Mittwoch 9. Januar 2008, 22:46

Code: Alles auswählen

def frage(frage,antworten,richtige):
    ...
frage('Was erzeugt man mit def',['eine Schleife','eine Funktion','eine Klasse','eine Variable'],2)


Ich würde das dann ungefähr implementieren. ;)

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]