Python data structures: Assignment 10.2

Coursera: Python data structures
Assignment 10.2
Week 6

10.2 Write a program to read through the mbox-short.txt and figure out the distribution by hour of the day for each of the messages. You can pull the hour out from the 'From ' line by finding the time and then splitting the string a second time using a colon.
From stephen.marquard@uct.ac.za Sat Jan  5 09:14:16 2008
Once you have accumulated the counts for each hour, print out the counts, sorted by hour as shown below.

Solution:

name = input("Enter file:")
if len(name) < 1 : name = "mbox-short.txt"
handle = open(name)
counts = dict()

for line in handle :
line = line.rstrip()
if line == "": continue
words = line.split()
if words[0] != "From" : continue
time = words[5].split(":")
counts[time[0]] = counts.get(time[0], 0) + 1

list = list()

for key,value in counts.items() :
list.append((key,value))
list.sort()

for hour,count in list :

print(hour, count)









Official website for Coursera:


Comments

Popular posts from this blog

Python data structures: Assignment 7.1

Python data structure: Assignment 8.4

Coursera:Web application technologies and Django

Programming for everybody (Python) Assignment 5.2