Brauche hilfe bei kleinem Problem

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.
Antworten
Panice111
User
Beiträge: 4
Registriert: Sonntag 4. November 2012, 21:19

hallo,

ich bin noch sehr neu in python, und würde gerne wissen warum der mir ausgibt "<function zb at 0x01B50FB0>"
wenn das programm heiß:

Code: Alles auswählen

def zb():
    x100 = 1
    if x100 == 1:
        print "ja"
und wie man das beispiel programm abruft :oops: :?:
senft
User
Beiträge: 25
Registriert: Montag 31. März 2008, 14:47

Du hast beim Aufruf wahrscheinlich die Klammern vergessen.
Panice111
User
Beiträge: 4
Registriert: Sonntag 4. November 2012, 21:19

Danke :D
Benutzeravatar
jbs
User
Beiträge: 953
Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam

Tutorial?
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
Panice111
User
Beiträge: 4
Registriert: Sonntag 4. November 2012, 21:19

und wenn ich anstadt dem code gerade eben einfach schreibe:

Code: Alles auswählen

def zb():
    a=1
    v=1
Dan kan ich ja danach a und v nicht einfach so abrufen, der sagt mit das das nicht definiert ist, wie kan man das so abrufen das der mir dan a ausgibt???
(

Code: Alles auswählen

Traceback (most recent call last):
  File "<pyshell#36>", line 1, in <module>
    zb(a)
NameError: name 'a' is not defined
)
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

jbs hat geschrieben:Tutorial?
Tutorial!

Das sind doch absolute Grundlagen.
Das Leben ist wie ein Tennisball.
Panice111
User
Beiträge: 4
Registriert: Sonntag 4. November 2012, 21:19

kan's mir den nun wer beantworten? :?
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Panice111 hat geschrieben:kan's mir den nun wer beantworten? :?
Natürlich
Das Leben ist wie ein Tennisball.
Benutzeravatar
pyFan
User
Beiträge: 22
Registriert: Sonntag 4. Januar 2009, 15:44

Hallo Panice111,

einem Unterprogramm (def ...) kann man Daten übergeben.
Das sind die Variablen nach dem Unterprogrammname in Klammern.

Dann wird gerechnet...

und am Ende das Ergebnis zurückgegeben.
Damit man weiss, was zurückgegeben werden soll, steht davor "return".

Im Unterprogramm kann man auch Variablen anlegen und verändern.
Aber im allgeinen werden die Eingabewerte in der ersten Zeile übergeben (hier a und b)
und mit return geht die Antwort zurück an das aufrufende Programm...

Gruss

P

Code: Alles auswählen

# -*- coding: utf-8 -*-

def addiere(a,b):
    return a+b

def vergleiche(a,b):
    if a == b:
        return True
    else:
        return False

print addiere(3,4)
print vergleiche(1,1)
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

pyFan hat geschrieben:einem Unterprogramm (def ...) kann man Daten übergeben.
Man sollte jetzt nur noch den Begriff "Unterprogramm" durch den korrekten Begriff "Funktion" ersetzen.

"Programm" impliziert ein eigenständiges in einem eigenen Prozess ablaufendes Stück Code.
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Code: Alles auswählen

def vergleiche(a, b):
    return a == b
Das Leben ist wie ein Tennisball.
Benutzeravatar
jbs
User
Beiträge: 953
Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam

vergleiche = __import__('operator').eq
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
mutetella
User
Beiträge: 1695
Registriert: Donnerstag 5. März 2009, 17:10
Kontaktdaten:

Wäre ein

Code: Alles auswählen

from operator import eq as vergleiche
nicht schöner?

mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit ;-) )
Antworten