I try to return all dates that correspond to the traffic intensity in the function below, but I get all the elements of only the first tuple as a list, and not all the tuples that match.
def traffic_intensity(count):
"""Returns string indicating intensity level given by number of
vehicles"""
level_name = ""
if(count < 5000):
level_name = "Very Low"
elif(count >= 5000 and count < 10000):
level_name = "Low"
elif(count >= 10000 and count < 18000):
level_name = "Moderate"
elif(count >= 18000):
level_name = "High"
return(level_name)
def dates_with_intensity(vehicle_records, intensity):
"""Returns number of days with the given traffic intensity level"""
new_list = []
for number in vehicle_records:
date_count = number[0]
number_count = number[1]
traffic = traffic_intensity(number_count)
if traffic == intensity:
new_list += date_count
return new_list
For test data
vehicle_records = [('2010-01-01',1),
('2010-01-02',2),
('2010-01-03',3)]
days = dates_with_intensity(vehicle_records, 'Very Low')
print(days)
I have to get
['2010-01-01', '2010-01-02', '2010-01-03']
but instead i get
['2', '0', '1', '0', '-', '0', '1', '-', '0', '1']
Can someone please help me with this?
source
share