Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class vehicle:
- def __init__(self, brand, model, km_done, service_date):
- self.brand = brand
- self.model = model
- self.km_done = km_done
- self.service_date = service_date
- def new_km_done(self, new_km_done):
- self.km_done += new_km_done
- def new_service_date(self,new_service_date):
- self.service_date = new_service_date
- def get_full_name(self):
- return self.brand + " " + self.model
- def list_vehicles(vehicles):
- if vehicles == []:
- print "List vehicles is empty. If you want add vehicle in list, choose option b."
- if not vehicles:
- print "List of vehicle is empty"
- def vehicle_object (brand, model, km_done_str, service_date, vehicles):
- try:
- km_done_str = km_done_str.replace(",", ".")
- km_done =float(km_done_str)
- new_vehicle = vehicle (brand=brand, model=model, km_done=km_done, service_date=service_date)
- vehicles.append(new_vehicle)
- return True
- except ValueError:
- return False
- def add_new_vehicles(vehicles):
- brand = raw_input("Please, enter brand of vehicle: ")
- model = raw_input("Please, enter model of vehicle: ")
- km_done_str = raw_input("Please, enter kilometres that vehicle has passed: ")
- service_date = raw_input("Please, enter date of last service (DD.MM.YYYY.): ")
- new = vehicle_object(brand, model, km_done_str, service_date, vehicles)
- if new:
- print "You have succesfully added a new vehicle %s %s !" % (brand, model)
- else:
- print "Please enter a number for the kilometers done so far"
- def choose_vehicle(vehicles):
- print "Select the number of vehicles you would like to edit: "
- list_vehicles (vehicles)
- selected_id = raw_input("What vehicle would you like to edit? (Please, enter ID number) ")
- return vehicles[int(selected_id) - 1]
- def new_km_done(vehicles):
- selected_id = choose_vehicle(vehicles)
- print "Selected vehicle is: %S %S with %S " (selected_id.brand, selected_id.model, selected_id.km_done)
- new_km_str = raw_input("How many km would you add? ")
- try:
- new_km_str = new_km_str.replace(",",".")
- new_km=float(new_km_str)
- selected_id.add_km(new_km)
- print "New number of passed kilometers for %S %S is now: %s. " %(selected_id.brand,selected_id.model,selected_id.km_done)
- except ValueError:
- print "Please enter just a number for km you would like to add"
- def update_service_date(vehicles):
- selected_id =choose_vehicle(vehicles)
- print "Selected vehicles: %s %S with service date: %s" % (selected_id.brand,selected_id.model,selected_id.service_date)
- new_service_date= raw_input("What is the new general service date for this vehicle?")
- selected_id.update_service_date(new_service_date=new_service_date)
- def main():
- print "Welcome to the Vehicle Manager program."
- vehicles = []
- while True:
- print "" # empty line
- print "Please pick one of the following options:"
- print "a) See a list of all the company vehicles."
- print "b) Add new vehicle."
- print "c) Edit the kilometers done for the chosen vehicle."
- print "d) Edit the last service date for chosen vehicle."
- print "e) Quit the program"
- choice = raw_input("Which option would you like to choose? (a, b, c, d, e) ")
- print ""
- if choice.lower() == "a":
- list_vehicles(vehicles)
- elif choice.lower() == "b":
- add_new_vehicles(vehicles)
- elif choice.lower() == "c":
- new_km_done(vehicles)
- elif choice.lower() == "d":
- update_service_date(vehicles)
- elif choice.lower() == "e":
- print "Thank you for using our app. Have a nice day!"
- break
- else:
- print "I'm sorry, but I didn't understand your choice. Pleease type in just a letter, either a, b, c or d."
- if __name__ == "__main__":
- main()
Add Comment
Please, Sign In to add comment