'''
Created on Nov 30, 2012

@author: ola,rcd
'''
import compsci101Utils


def getData (filename):    
    data = compsci101Utils.readCSVfile(filename)
    dr = {}          # key in dr is a name, value is a dictionary of places->ratings
    places = set()
    for line in data:
        name = line[0]
	ratings = line[1:]
        dr[name] = {}
        #print data
        #ratings is list of strings, each string is "place rate"
        for r in ratings:
            (place,rating) = r.split()
            dr[name][place] = int(rating)
            places.add(place)
            #print place,rating
        #print name,dr[name]  
    itlist = sorted(places)

    for name in dr:
        ratings = dr[name] #dictionary of ratings for dr[name]
        dr[name] = []
        for place in itlist:
            if place in ratings:
                dr[name].append(ratings[place])
            else:
                dr[name].append(0)
        #print name,ratings,dr[name]     
    return itlist,dr

# for testing
it,dr = getData("foodratings_example.txt")
print it
print dr
