 # 9.4 Write a program to read through the mbox-short.txt
 # and figure out who has the sent the greatest number of mail messages. 
 # The program looks for 'From ' lines and takes the second word of those lines
 # as the person who sent the mail. 
 # The program creates a Python dictionary that maps the sender's mail address 
 # to a count of the number of times they appear in the file. 
 # After the dictionary is produced, the program reads through the dictionary
 # using a maximum loop to find the most prolific committer.
 
file_name = input('Enter file name: ')
 
try:
    file_handle = open(file_name)
except:
    print('Error: Unable to open specified file')
    
senders = dict()
    
for line in file_handle:
    if not line.startswith('From '): continue
    
    line.rstrip()
    words = line.split()
    senders[words[1]] = senders.get(words[1],0) + 1

top_sender = None
max_count = None 
 
for sender,count in senders.items():
    if max_count is None or count > max_count:
        top_sender = sender
        max_count = count
        
print(top_sender, max_count)
    