Seite 1 von 1

Blutige Anfängerfrage

Verfasst: Freitag 23. Oktober 2009, 14:09
von doca82
Hallo,
bin gerade dabei mich in Python einzuarbeiten und bin ein Totalanfänger..d.h. keine Progammiersprache bisher gelernt....

Warum gibt er mir nicht den Preis "6" aus?

Vielen Dank *schäm*

Code: Alles auswählen

def PacketB (preis, artikel):
  cost = 6
  item= 'nudel'
  if (preis):
      return cost
  cost = 85
  if (artikel):
      return artikel

print PacketB(preis)
Ergebnis:
Traceback (most recent call last):
File "C:/Python26/test2.py", line 10, in <module>
print PacketB(preis)
NameError: name 'preis' is not defined

Verfasst: Freitag 23. Oktober 2009, 14:30
von ivka_sto
Weil du preis nirgendwo definiert hast.

So geschrieben, solltest du die Methode mit einem Argument aufrufen - also PacketB(4, 7)

In den if-Schleifen dürfte es aber immer reingegangen werden, da preis und artikel immer true sein werden.

Oder versuchst du zu unterscheiden, ob PacketB mit preis oder artikel aufgerufen wird? Das ginge nämlich nicht, muß immer mit beidem aufgerufen werden.

Verfasst: Freitag 23. Oktober 2009, 14:37
von Hyperion
"PaketB" ist auch keine Funktion, sondern eher ein Objekt ;-)

Verfasst: Freitag 23. Oktober 2009, 14:38
von doca82
Vielen Dank erst mal!
Von dem Ding habe ich mir versprochen, wie Du bereits geahnt hast, dass mir entweder preis oder artikel herausgegeben wird..

Warum genau geht das eigentlich nicht?

Aber wenn das nicht geht, werd ich wohl die Infos in ein Tupel packen und dann aufrufen ;)

Danke

Grüße

Verfasst: Freitag 23. Oktober 2009, 14:39
von doca82
oh ja, vielleicht ein objekt... :roll:
Danke

Verfasst: Freitag 23. Oktober 2009, 14:55
von snafu
"Paket", nicht "Packet". :)

Oder eben "package" auf Englisch.

Oder meinst du "Parkett"? :o

Verfasst: Freitag 23. Oktober 2009, 15:28
von numerix
ivka_sto hat geschrieben:if-Schleifen
Autsch!

Verfasst: Freitag 23. Oktober 2009, 15:37
von ivka_sto
Ich bin Ausländerin, ich darf das :lol:

Verfasst: Freitag 23. Oktober 2009, 16:14
von Hyperion
ivka_sto hat geschrieben:Ich bin Ausländerin, ich darf das :lol:
Dar nicht fehlen:

www.if-schleife.de

:-D

Verfasst: Freitag 23. Oktober 2009, 19:00
von doca82
@snafu
ja ich meine natürlich pakett [sic] :P

Verfasst: Freitag 23. Oktober 2009, 20:15
von snafu
ivka_sto hat geschrieben:Ich bin Ausländerin, ich darf das :lol:
Tzä. Mein Uropa kommt aus Oberschlesien. Allerdings war das vor'm Krieg. ^^

Verfasst: Freitag 23. Oktober 2009, 21:12
von BlackJack
@snafu: Das heisst Dein Uropa dürfte das auch. Du nicht. :-P

Verfasst: Freitag 23. Oktober 2009, 21:56
von Hyperion
BlackJack hat geschrieben:@snafu: Das heisst Dein Uropa dürfte das auch. Du nicht. :-P
Karl der Große ist ein direkter Vorfahr von mir - darf ich das jetzt auch? :-D