While reading and trying to understand the proof I got stuck in some parts of the proof.
Why can we take all the $V_{r_i}$ in such manner? Shall we say first w.l.o.g ?:
Suppose $n\ge2$ and $V_{r_1},...,V_{r_n}$ have been chosen in such a manner that $r_i<r_j$ implies $\overline V_{r_j}\subset V_{r_i}$.
How can we know that $\overline V_j$ are all compact sets? We need this hypothesis so that Theorem 2.7 can be applied.
Why is it enought to mention that $f$ is lower-semicontinuous and $g$ is upper-semicontinuous to have continuity of $f$?
The author wrote it's clear that $f$ has it's support in $\overline V_0$.
Actually we need the support to be in $V$; by (2) it's done.
Here is how I proved, please verify.
Let's see that $\{x:f(x)\neq 0\}\subset V_0$ (we then take closures on both sides).
Let $x\in\{x:f(x)\neq 0\}$ and let´s see that $x\in V_0.$
We have $f(x)\neq 0$.
By definition $f=\sup_r f_r.$ Thus $\sup_r f_r\neq 0$.
Now we must have $f_r=r$ if $x\in V_r$ otherwise $f_r=0,\sup_r f_r=0=f$, contradiction.
If $x\in V_r,f_r=r$.
We have $r>0,$ thus $\overline V_r\subset V_0.$ Thus $x\in V_0$
Hence $\{x:f(x)\neq 0\}\subset V_0$. Taking closures, we have the result.


If you study Rudin's proof of Urysohn’s Lemma and want to describe what it is doing at the start, you might come up with
The proof is also implicitly using the Axiom of dependent choice, $\mathsf {DC}$, to construct this sequence of open sets. The OP should be aware that the construction of the chain of open sets
$$\tag 1 V_1 \subset \dots \subset V_\alpha \subset \dots \subset V_\beta \subset \dots \subset V_0 \text{ where } \alpha,\beta \in \{r_n\} \text{ and } \alpha \gt \beta $$
is accomplished by creating a function(sequence) using recursion/choice. If the chain has length $n$, you can increase the length by $1$ while keeping that rational number 'link-up' in place. Recursion lets you finish up with a countable family $(V_n)_{n\ge0}$, and after 'sorting', you have a two-sided chain as expressed by $\text{(1)}$.
Usually (almost always?) when defining a sequence using recursion the index set consists of the natural numbers. But in Rudin's recursion step, we find
It might be helpful (more rigorous?) to think of each of the $V \text{ sets }$ as having two subscripts, the rational number as well as the $n$ corresponding to its recursive construction.
The recursion also starts off with an 'initialized state' for the first two terms of the sequence, $V_{r_1} = V_0$ and $V_{r_2} = V_1$. Also, the way the recursion works, all the prior terms of the sequence are inputs to form the next 'interpolation' term (no Fibonacci here!). The final output structure of the recursion, the infinite chain $\text{(1)}$ with some concomitant properties, is all that is needed to create the desired continuous function.
It is helpful to imagine rational numbers like $\frac{1}{2}$,$\frac{1}{4}$,$\frac{3}{4}$, etc. 'feeding the recursion' and creating the next term of the sequence as well as the chain relation in $\text{(1)}$.
To picture how the proof creates the continuous function $f$, try to 'see it over' the $\text{(1)-chain expression}$ as a decreasing function that starts at $1$ over $V_1$ and goes to $0$ over $V_0$. The picture will 'look like' an increasing continuous function
$\quad g: [0,1] \text{ (reverse the (1)-chain)} \to [0,1]$.
But of course the topological space $X$ can be finite in which case this 'picture' is not accurate (see example in next section).
In the proof you will see the use of the $\text{supremum }$ function, and it is how you can define the desired function $f$ while guaranteeing that is continuous.
Example 1: Let $X =\{0,1\}$ be the discreet topological space containing $2$ points. Let $K = \{1\}$ and $V = X$. Using the argument found in Rudin's proof of Urysohn's Lemma, depending on the choices you make, exactly two continuous function can be created
$\quad {\chi}_K \text{ and } {\chi}_X$
In this case using the rational number enumeration $(r_n)$ leads to a bit of 'wheel spinning'.