On 09/02/16 15:34, Chelsea G wrote: > Then in the csv file I want to search for a certain range of dates like > 1/3/2016 - 2/3/2016. I can get individual dates but not a range of dates.
Can ytou simplify the problem momentaruily? Can you create a list of dates then search that list for a range of dates? That is forget about the csv file issues and focus on the date problem? That might make it easier to see where you are having the issues. > have an if elif statement to read row5 which is the date row. My if > statement is the initial pass at returning the values within the date range > and then my elif is the parameter and if there is no parameter passed in > then it returns all data. I am having some trouble trying to pass in a date > range parameter. How are you trying to represent the date range? As two dates? Or as date and a timedelta object? Or some thing else?(what?) > def populate_dict(self, filename, date_choice, key_choice): Unfortunately in Python we can't tell much about the types of your parameters from the declaration. > with open(filename, 'rb') as f: > reader = csv.reader(f) > next(reader, None) # > for row in reader: > if date_choice == row[5]: > self.dict[row[2]].append(row[3]) row[5] will be a string so this suggests your date_choice is a string representation of a single date? That obviously cannot be a range you need a start and end point. And then you need to see if the target date lies between those two points. And for that you need a way to compare them. Comparing dates as a general problem is very, very difficult. Fortunately the datetime module and the timedelta object within it simplifies things for your use case. -- Alan G Author of the Learn to Program web site http://www.alan-g.me.uk/ http://www.amazon.com/author/alan_gauld Follow my photo-blog on Flickr at: http://www.flickr.com/photos/alangauldphotos _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor