Challenge: Create the classes needed to make the following code work as shown:
mike_jones = Candidate('Mike Jones')
susan_dore = Candidate('Susan Dore')
kim_waters = Candidate('Kim Waters')
candidates = {
mike_jones,
susan_dore,
kim_waters,
}
votes = [
mike_jones,
susan_dore,
mike_jones,
susan_dore,
susan_dore,
kim_waters,
susan_dore,
mike_jones,
]
for candidate in votes:
candidate += 1
election = Election(candidates)
election.results()
Mike Jones: 3 votes
Susan Dore: 4 votes
Kim Waters: 1 votes
Susan Dore won: 50.0% of votes
Don't worry about ties or whether votes should be singular.
You should use the __iadd__ method to customize the behavior of += in the for loop. __iadd__ is similar to __add__ except that it implements +=. You don't need a __add__ method.