I have trouble in understanding the proof of a theorem on compact sets and limit points in Rudin's book.
Theorem: If $E$ is an infinite subset of a compact set $K$, then $E$ has a limit point in $K$.
Proof: If no point of $K$ were a limit point of $E$, then each $q\in K$ would have a neighborhood $V_q$ which contains at most one point of $E$. It is clear that no finite subcollection of $\{V_q\}$ can cover $E$, and thus $K$. This contradicts the compactness of $K$.
My question is: How do we know the collection $\{V_q\}$ is an open cover of $K$, given $V_q\cap E=\emptyset$ or $q\in E$? I mean, the radius of each open neighborhood around $q$ is fixed, because each punctured neighborhood has to satisfy certain conditions $V_q^* \cap E=\emptyset$, where $*$ denotes "punctured." In this case, how can we ensure the collection of such neighborhoods still covers $K$?
Since $V_q$ is a neighborhood of $q$, $q\in V_q$. And so$$K=\bigcup_{q\in K}\{q\}\subset\bigcup_{q\in K}V_q.$$