Comments from an [answer to another question][1] apply here to the commented function `reverse_num`:

**`divmod`**

In Python, when you are performing arithmetic and are interested in both the quotient and the remainder of a division, you can use [`divmod`][2].

**Magic numbers**

You have `10` hardcoded in multiple places. My preference is to use a default argument giving the base to use.


    def reverse(integer, base=10):
        result = 0
        while integer:
            integer, r = divmod(integer, base)
            result = base * result + r
        return result


----------

**More specific comments**

 - The documentation for `palindrome` is somewhat imprecise. It implies that it returns a number but it actually returns a tuple.

 - `num = num + rnum` can be re-written `num += rnum`

 - it may be interesting to memoize any result you compute so that you do not it to spend time to compute it later on. This needs some benchmarking to be sure this is relevant.

  [1]: http://codereview.stackexchange.com/a/133653/9452
  [2]: https://docs.python.org/2/library/functions.html#divmod