Liebe Community,
Ich hätte da mal eine merkwürdige Frage
Ich habe zwei Klassen im gleichen Gültigkeits Raum
Ist es dann möglich in der einen Klasse die andere Klasse an zu steuern.
Wie immer für jeden Hinweis Dankbar
Mungo1981
Object aus Object aufrufen
Zum Beispiel
Code: Alles auswählen
class Test1:
def testen(self, 0):
print O
class Test2:
def anlegen(self,):
T = Test1()
T.testen("Hallo Welt")
@Mungo1981: Bitte ein Beispiel das syntaktisch korrekt ist, und dann beschreib mal was passiert und was Du stattdessen erwartest oder haben möchtest.
-
- User
- Beiträge: 168
- Registriert: Montag 9. Mai 2016, 09:14
- Wohnort: Berlin
Oder so?
Code: Alles auswählen
class Tankstelle(object):
def __init__(self):
self.autos = []
def neues_auto(self, auto):
self.autos.append(auto)
def gelaende(self):
print "\nTankstellen Auskunft:"
for auto in self.autos:
print auto.zustand()
print ""
def tanken(self):
for auto in self.autos:
auto.tanken(20)
class Auto(object):
def __init__(self):
super(Auto, self).__init__()
self.sprit = 100
self.gefahrene_strecke = 0
self.verbrauch = 10
def fahren(self, kilometer):
if kilometer / self.verbrauch < self.sprit:
self.gefahrene_strecke += kilometer
self.sprit -= kilometer / self.verbrauch
else:
self.gefahrene_strecke += kilometer / self.verbrauch
self.sprit = 0
def tanken(self, sprit):
self.sprit += sprit
def zustand(self):
return "Gefahrene Kilometer: %i\nZustand:%i\n" % (self.gefahrene_strecke, self.sprit)
class Mercedes(Auto):
def __init__(self, name, verbrauch):
super(Mercedes, self).__init__()
self.name = name
self.sprit = 90
self.verbrauch = verbrauch
def zustand(self):
return "Auto-Name: %s\nGefahrene Kilometer: %i\nZustand:%i\n" % (self.name, self.gefahrene_strecke, self.sprit)
Toja = Tankstelle()
mercedes = Mercedes('Herkules', 12)
print mercedes.zustand()
mercedes.fahren(1200)
print mercedes.zustand()
old_timer_mercedes = Mercedes('Esel', 25)
print old_timer_mercedes.zustand()
old_timer_mercedes.fahren(600)
print old_timer_mercedes.zustand()
Toja.neues_auto(mercedes)
Toja.neues_auto(old_timer_mercedes)
Toja.gelaende()
Toja.tanken()
print mercedes.zustand()
print old_timer_mercedes.zustand()
_________________________
OUTPUT:
Auto-Name: Herkules
Gefahrene Kilometer: 0
Zustand:90
Auto-Name: Herkules
Gefahrene Kilometer: 100
Zustand:0
Auto-Name: Esel
Gefahrene Kilometer: 0
Zustand:90
Auto-Name: Esel
Gefahrene Kilometer: 600
Zustand:66
Tankstellen Auskunft:
Auto-Name: Herkules
Gefahrene Kilometer: 100
Zustand:0
Auto-Name: Esel
Gefahrene Kilometer: 600
Zustand:66
Auto-Name: Herkules
Gefahrene Kilometer: 100
Zustand:20
Auto-Name: Esel
Gefahrene Kilometer: 600
Zustand:86