import time
class Ampel:
def __init__(self, rot, gelb, gruen):
self.rot = rot
self.gruen = gruen
self.gelb = gelb
def Rotphase(self):
print(self.rot)
def Gelbphase(self):
print(self.gelb)
def RotGelbphase(self):
print(self.rot + " ist an")
print(self.gelb + " ist an")
print(self.gruen + " ist aus")
def Gruenphase(self):
print(self.gruen)
a = Ampel("A", "B", "C")
while True:
xAlt = 0
xNeu = time.clock()
if xNeu > 5 and xNeu < 10:
a.Rotphase()
if xNeu > 10 and xNeu < 15:
a.Gelbphase()
xNeu = xAlt
Wieso wird die While-Schleife nicht wieder erneut gestartet?
Ich bedanke mich schon mal für jede Art der Hilfestellung.
Problem mit While-Schleife
- noisefloor
- User
- Beiträge: 3843
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
setzt' den Code bitte unbedingt in Code-Tags. Dazu musst du im vollständigen Editor auf das `</>` Symbol klicken und deine Code da einsetzen. Ohne korrekte Einrückung ist die Fehleranalyse nicht möglich.
Was aber schon mal klar ist: die Klasse macht so wenig Sinn. Du änderst du Werte von rot, gelb, grün nicht, d.h. die Klasse bildet deine Phasen nicht ab. Und um ein paar Attribute ausgeben zu lassen, die sich nicht ändern, braucht man auch keine Methoden.
Welchen Sinn hat das `x` als Präfix vor Alt und Neu? Macht eigentlich keinen Sinn.
Gruß, noisefloor
setzt' den Code bitte unbedingt in Code-Tags. Dazu musst du im vollständigen Editor auf das `</>` Symbol klicken und deine Code da einsetzen. Ohne korrekte Einrückung ist die Fehleranalyse nicht möglich.
Was aber schon mal klar ist: die Klasse macht so wenig Sinn. Du änderst du Werte von rot, gelb, grün nicht, d.h. die Klasse bildet deine Phasen nicht ab. Und um ein paar Attribute ausgeben zu lassen, die sich nicht ändern, braucht man auch keine Methoden.
Welchen Sinn hat das `x` als Präfix vor Alt und Neu? Macht eigentlich keinen Sinn.
Gruß, noisefloor
@TheBlackApple: die Endlosschleife läuft endlos und heizt Deine Wohnung, mehr macht sie nicht. Hast Du Dir mal angeschaut, was in xNeu steht? Die Zuweisung xNeu=xAlt ist unnötig, da xNeu gleich wieder überschrieben wird. xAlt wird nicht verwendet, und wäre sowieso immer 0.
Du willst messen, wie viel Zeit vergangen ist, dann sollte xAlt die Zeit z.B. der letzten Grünphase enthalten und Du solltest immer die Differenz zur aktuellen Zeit berechnen,
Du willst messen, wie viel Zeit vergangen ist, dann sollte xAlt die Zeit z.B. der letzten Grünphase enthalten und Du solltest immer die Differenz zur aktuellen Zeit berechnen,