Was ist die Ausgabe des folgenden Pythoncodes?

jo135  13.12.2023, 12:22

Warum probierst du es nicht einfach aus?!

Nic1400 
Beitragsersteller
 13.12.2023, 12:24

wollte nummersicher gehen

MonkeyKing  13.12.2023, 12:27

Ausprobieren ist sichergehen

Nic1400 
Beitragsersteller
 13.12.2023, 12:28

Bei mir wird leider ein Fehler angezeigt :(

1 Antwort

Die Ausgabe des folgenden Pythoncodes ist 12.

Die Klasse

fruits

hat zwei Attribute:

price

und

quantity

. Das Attribut

price

wird beim Instanziieren der Klasse mit dem Wert 50 initialisiert. Das Attribut

quantity

wird dann mit dem Wert 10 gesetzt.

Die Methode

print()

gibt die Summe der Werte der Attribute

quantity

und

len(obj.__dict__)

aus. Das Attribut

len(obj.__dict__)

gibt die Anzahl der Attribute des Objekts

obj

zurück. In diesem Fall sind dies die beiden oben genannten Attribute

price

und

quantity

.

Die Summe der Werte ist also 10 + 2 = 12.

Hier ist eine ausführlichere Erklärung:
-----------------------------------------------------------------

class fruits:

   def __init__(self, price):

       self.price = price

obj = fruits(50)

obj.quanity = 10

obj.bags = 2

print(obj.quantity + len(obj.__dict__))

---------------------------------------------------------------

  • In Zeile 1 wird die Klasse

fruits

definiert. Die Klasse hat ein Attribut

price

, das beim Instanziieren der Klasse mit dem Wert 50 initialisiert wird.

  • In Zeile 3 wird das Objekt

obj

der Klasse

fruits

instanziiert.

  • In Zeile 4 wird das Attribut

quantity

des Objekts

obj

auf den Wert 10 gesetzt.

  • In Zeile 5 wird das Attribut

bags

des Objekts

obj

auf den Wert 2 gesetzt.

  • In Zeile 6 wird die Methode

print()

aufgerufen. Die Methode

print()

gibt die Summe der Werte der Attribute

quantity

und

len(obj.__dict__)

aus.

Die Ausgabe der Methode

print()

ist also 12.

Woher ich das weiß:Recherche