code: def _get_opstr(op, cls):
      
      # numexpr is available for non-sparse classes
      subtyp = getattr(cls, '_subtyp', '')
      use_numexpr = 'sparse' not in subtyp
  
      if not use_numexpr:
          # if we're not using numexpr, then don't pass a str_rep
          return None
  
      return {operator.add: '+',
              radd: '+',
              operator.mul: '*',
              rmul: '*',
              operator.sub: '-',
              rsub: '-',
              operator.truediv: '/',
              rtruediv: '/',
              operator.floordiv: '//',
              rfloordiv: '//',
              operator.mod: None,  # TODO: Why None for mod but '%' for rmod?
              rmod: '%',
              operator.pow: '**',
              rpow: '**',
              operator.eq: '==',
              operator.ne: '!=',
              operator.le: '<=',
              operator.lt: '<',
              operator.ge: '>=',
              operator.gt: '>',
              operator.and_: '&',
              rand_: '&',
              operator.or_: '|',
              ror_: '|',
              operator.xor: '^',
              rxor: '^',
              divmod: None,
              rdivmod: None}[op]
docs: Find the operation string, if any, to pass to numexpr for this
      operation.
  
      Parameters
      ----------
      op : binary operator
      cls : class
  
      Returns
      -------
      op_str : string or None