code: def rownrs(self, key, upperkey={}, lowerincl=True, upperincl=True):
          
          lkey = self._makekey(key)
          ukey = self._makekey(upperkey)
          if len(ukey) == 0:
              return self._rownrs(lkey)
          return self._rownrsrange(lkey, ukey, lowerincl, upperincl)
docs: Get a sequence of row numbers containing the key(s).
  
          A single key can be given, but by giving argument `upperkey` as well
          a key range can be given (where upper key must be > lower).
          One can specify if the lower and upper key should be part of the range
          (`incl=True`) or not. By default both keys are part of the range.
  
          The key and optional upper key have to be given in the same way as
          for method :func:`rownr`.
  
          Similar to method :func:`rownr`. python's index operator [] can be used
          if the index consists of a single column. However, in this case only
          key ranges can be used (because the index operator with a single key
          returns a single row number, thus can only be used for unique indices).
          The lower key is inclusive, but the upper key is exclusive conform
          the standard python index semantics.
  
          For example::
  
            t = table('3c343.MS')
            tinx = t.index ('ANTENNA1')    # build index for antenna name
            rownr = tinx.rownr(0)          # find antenna1 = 0
            rownr = tinx[0:1]              # same as above