run_rovers.py
822 Bytes
from rover import Rover
if __name__ == '__main__':
instructions = []
with open('input.txt') as f:
boundaries = f.readline()
for line in f:
line = line.strip()
if line:
instructions.append(line)
it = iter(instructions)
for i, (start, route) in enumerate(zip(it, it)):
# initialize rover on proper position, and have it store its route
rover = Rover(start=start, route=route, boundaries=boundaries)
# let the rover execute its route
rover.execute_route(rover.route)
position = '{} {} {}'.format(rover.coordinates[0],
rover.coordinates[1],
rover.heading)
# print to stdout
print 'Rover {}: {}'.format(i + 1, position)