code: def convert_coordinates(self):
          
          coord_list = []
          # strip out "null" elements, i.e. ''.  It might be possible to eliminate
          # these some other way, i.e. with regex directly, but I don't know how.
          # We need to copy in order not to burn up the iterators
          elements = [x for x in regex_splitter.split(self.coord_str) if x]
          element_parsers = self.language_spec[self.region_type]
          for ii, (element, element_parser) in enumerate(zip(elements,
                                                             element_parsers)):
              if element_parser is coordinate:
                  unit = self.coordinate_units[self.coordsys][ii % 2]
                  coord_list.append(element_parser(element, unit))
              elif self.coordinate_units[self.coordsys][0] is u.dimensionless_unscaled:
                      coord_list.append(element_parser(element, unit=u.dimensionless_unscaled))
              else:
                  coord_list.append(element_parser(element))
  
          if self.region_type in ['ellipse', 'box'] and len(coord_list) % 2 == 1:
                  coord_list[-1] = CoordinateParser.parse_angular_length_quantity(elements[len(coord_list)-1])
  
          # Reset iterator for ellipse and annulus
          # Note that this cannot be done with copy.deepcopy on python2
          if self.region_type in ['ellipse', 'annulus']:
              self.language_spec[self.region_type] = itertools.chain(
                  (coordinate, coordinate), itertools.cycle((radius,)))
  
          self.coord = coord_list
docs: Convert coordinate string to objects