code: def _findExtnames(self, extname=None, exclude=None):
          
          #make a list of the available extension names for the object
          extensions=[]
          if extname is not None:
              if not isinstance(extname,list): extname=[extname]
              for extn in extname:
                  extensions.append(extn.upper())
          else:
          #restore all the extensions data from the original file, be careful here
          #if you've altered data in memory you want to keep!
              for i in range(1,self._nextend+1,1):
                  if hasattr(self._image[i],'_extension') and \
                      "IMAGE" in self._image[i]._extension:
                      if self._image[i].extname.upper() not in extensions:
                          extensions.append(self._image[i].extname)
          #remove this extension from the list
          if exclude is not None:
              exclude.upper()
              if exclude in extensions:
                  newExt=[]
                  for item in extensions:
                      if item != exclude:
                          newExt.append(item)
              extensions=newExt
              del newExt
          return extensions
docs: This method builds a list of all extensions which have 'EXTNAME'==extname
              and do not include any extensions with 'EXTNAME'==exclude, if any are
              specified for exclusion at all.