If you knew that the option will expire out of the money (OTM), the value of the option would be 0, whichever the value of the local interest rate r. Therefore Rho would be 0.
If you knew that a Call with strike K will expire in the money (ITM), its value would equal that of a (long) forward with delivery price K. (The delivery price is that agreed at inception to be paid at expiration.) The payoff of an Call that will be exercised for sure is S(T)-K, which equals that of the aforementioned forward.
The value of a forward and a call, assuming the latter will expire ITM, is
f = S(t)*exp(-q(T-t)) - K*exp(-r(T-t))
where q is the yield of the underlying, for example, the dividend yield of stock index, a foreign exchange rate, or a convenience yield of a commodity.
Differentiating with respect to r yields
Rho of a Forward = K * exp(-r(T-t)) * (T-t)
which is a POSITIVE constant.
In our uncertain world, the Rho of a Call will be between 0 (the one of a call sure to expire OTM) and the Rho of a Forward (the one of a call sure to expire ITM).
Rho tends asymptotically to the upper limit when the call becomes more and more ITM. This is because a higher S(t) indicates that the scenarios of high S(T) at expiration become more likely, which turn the option more likely to expire ITM, and its rho closer to that of a forward.
Rho tends to 0, the lower limit, as the call becomes more and more OTM. This is because a lower S(t) indicates that scenarios of low S(T) at expiration become more likely, which in turn makes the Rho closer to that of a call sure to expire OTM.
The analysis for a Put is similar. A put sure to expire ITM is equivalent to a Short Forward, whose value is
-f = - S(t)*exp(-q(T-t)) + K*exp(-r(T-t))
Differentiating with respect to r,
Rho of a Short Forward = -K * exp(-r(T-t)) * (T-t)
which is a NEGATIVE constant.
In our uncertain world the Rho of a Put before expiration is between the Rho of a Short Forward (the lower limit, a negative number) and 0 (the upper limit, the Rho of a put sure to expire OTM).
When S(t) tends to 0, the Rho of a Put tends to the Rho of a Short Forward. When S(t) tends to be large, the Rho of a Put tends to 0 asymptotically.
There is also another Rho, the derivative of the premium with respect to q. But that is another story because the Rho of the Forward depends on S(t).