
class Candidate(object):
     def __init__(self, name):
         self.name = name
         self.votes = 0
     def add(self, amount):
         self.votes += amount

f = open("C:\\Documents and Settings\\dgerman\\Desktop\\tyler.txt", "r")
lines = f.readlines()
f.close()
# print lines

entries = {}

for line in lines:
     # print line
     words = line.split()
     for word in words:
         # print word
         if entries.has_key(word):
             entries[word].add(1)
         else:
             entries[word] = Candidate(word)
             entries[word].add(1)

for e in entries.keys():
     print e, entries[e].votes

print "-----------------------"

def mymax(candidates):
     max = candidates[0]
     for i in range(1, len(candidates)):
         if max.votes < candidates[i].votes:
             max = candidates[i]
     return max

candidates = entries.values()
result = []
while candidates:
     a = mymax(candidates)
     result.append(a)
     candidates.remove(a)

for i in range(len(result)):
     print result[i].name, result[i].votes


