Page 217 -
P. 217

custom data objects




                              It’s time to apply what you now know about Python’s dictionary to your code. Let’s continue to
                              concentrate on Sarah’s data for now. Strike out the code that you no longer need and replace it
                              with new code that uses a dictionary to hold and process Sarah’s data.
                              def sanitize(time_string):
                                  if '-' in time_string:
                                      splitter = '-'
                                  elif ':' in time_string:
                                      splitter = ':'
                                  else:
                                      return(time_string)
                                  (mins, secs) = time_string.split(splitter)
                                  return(mins + '.' + secs)


                              def get_coach_data(filename):
                                  try:
                                      with open(filename) as f:
                                          data = f.readline()
                                      return(data.strip().split(','))
                                  except IOError as ioerr:
                                      print('File error: ' + str(ioerr))
            Strike out the code
            you no longer need.          return(None)

                              sarah = get_coach_data('sarah2.txt')
                             (sarah_name, sarah_dob) = sarah.pop(0), sarah.pop(0)
                              print(sarah_name + "'s fastest times are: " +
            Add your dictionary           str(sorted(set([sanitize(t) for t in sarah]))[0:3]))
            using and processing
            code here.


















                                                                                      you are here 4    181
   212   213   214   215   216   217   218   219   220   221   222