from picture import * class format_float (float): '''This class recompiles floats so that it shows 2 digits behind the decimal''' def __repr__(n): result = str (n) [0:8] if result == 0.0: result = float('%08g'%result) return result def read_file (f): ''' This function will read a text file containing airport information then strip unwanted characters and send data to read_airport function for processing''' for line in f: yield line.rstrip().split(":") def read_airports(file): '''This function will read in data submitted by read_file function, compile the data, and return 2 lists which one contains the each airport longitude and lattitude and the other containing airport with non-domestic status''' lat, long, location, status= '','',{}, {} for x in read_file(file): lat = float(str(x[3]) + "." + str(x[4]) + str(x[5])) long = float(str(x[6]) + "." + str(x[7]) + str(x[8])) location [x[0]] = (format_float(lat), format_float(long)) if len(x) == 10: status [x[0]] = x[9] return location, status file = open(pick_a_file()) print read_airports(file) ####################THE FILE BELOW#################### HKI:HONG KONG INTERNATIONAL:HONG KONG:00:00:00:00:00:00:INT PIA:PEARSON INTERNATIONAL:CANADA:36:42:52:42:88:26:INT DA:DUBLIN AIPORT:DUBLIN:99:99:99:99:99:99