<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def select_sites( self, site_labels ):
 """ Selects sites in the lattice with specified labels. Args: site_labels (List(Str)|Set(Str)|Str):
 Labels of sites to select. This can be a List [ 'A', 'B' ], a Set ( 'A', 'B' ), or a String 'A'. Returns: (List(Site)):
 List of sites with labels given by `site_labels`. """

        if type( site_labels ) in ( list, set ):
            selected_sites = [ s for s in self.sites if s.label in site_labels ]
        elif type( site_labels ) is str:
            selected_sites = [ s for s in self.sites if s.label is site_labels ]
        else:
            raise ValueError( str( site_labels ) )
        return selected_sites