forked from simonb83/traffic
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtrafficLight.py
39 lines (30 loc) · 950 Bytes
/
trafficLight.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
class TrafficLight(object):
def __init__(self, greenTime, redTime, perSecond=0.1, totalTime=60, state=''):
self.greenTime = greenTime
self.redTime = redTime
self.totalTime = greenTime+redTime
self.state = 'Green'
self.perSecond = perSecond
def greenTime(self):
return self.greenTime
def redTime(self):
return self.redTime
def totalTime(self):
return self.totalTime
def totalTime(self):
return self.perSecond
def updateLight(self,greenTime=None,redTime=None,perSecond=None):
if greenTime:
self.greenTime = greenTime
if redTime:
self.redTime = redTime
if perSecond:
self.perSecond = perSecond
def changeState(self):
if self.state == 'Red':
self.state = 'Green'
else:
self.state = 'Red'
def __str__(self):
return "Green time is %s, Red time is %s, Pass rate is %s" % (self.greenTime, self.redTime, self.perSecond)
# def operateLight():