For $\mathbb{R}$, does every open cover have a "countable" subcover? I am reading intro theory on Heine-Borel where the equivalent statement to "a set $E$ contained in $\mathbb{R}$ is compact" (closed and bounded) is that "every open cover for $E$ has a finite subcover". Here, they give an example of how an open set $A$ cannot have a finite subcover: 


  Consider $A$ to be the open interval $(0,1)$. Then for each point $x$ in $(0,1)$, consider the infinite collection of sets $O_x = \{(\frac{x}{2},1) : x \in (0,1)\}$ whose union serves as an open cover for $(0,1)$. But it is impossible to find a finite subcover for $O_x$ because for any minimum value of $x$ in $(0,1)$ we can find $0 \le y \le \frac{x}{2}$ where $y$ is not contained in the finite union of sets. 


I assume this weakness lies in the fact that due to the density of natural numbers in $\mathbb{R}$, we can always find such a $y$ that is smaller than $\frac{x}{2}$ and thus a finite union of sets is insufficient. 

But what if we had a countable union of sets—the same cardinality as that of the natural numbers. Then, on $\mathbb{R}$, must every open cover have a "countable" subcover?
The answer to your question is yes, in a strong way.

The key observation is that the topology on $\mathbb{R}$ is countably generated - there is a countable set $\{U_i: i\in\mathbb{N}\}$ of open sets such that any open set $V$ is a union of $U_i$s. (Take the $U_i$s to be the open intervals with rational endpoints.) Call these the basic opens.

Now suppose $X\subseteq\mathbb{R}$ and $\mathcal{C}=\{C_j: j\in J\}$ is an open cover of $X$. Let $$K=\{i: U_i\subseteq C_j\mbox{ for some $j\in J$}\}$$ be the set of (indices of) basic opens contained in elements of $C_j$. $K$ is countable, so we can turn this around: for each $i\in K$, let $D_i$ be some element of $\mathcal{C}$ with $U_i\subseteq D_i$.

There are countably many $D_i$s, and it's easy to see that $\bigcup D_i=\bigcup \mathcal{C}$; so they form a countable subcover of $X$. This shows that any subset of $\mathbb{R}$ has the countable subcover property! In topological terminology, the usual topology on $\mathbb{R}$ is hereditarily Lindelof, and the proof above used the fact that $\mathbb{R}$ is second countable (second countability implies hereditary Lindelofness). Second countability is a very strong property, but most commonly-encountered topological spaces have it.
We say a topological space $X$ is Lindelof if every open cover of $X$ has a countable sub-cover. 

For a topological space $X$ you have


$X$ is second countable implies $X$ is Lindelof.
$X$ is second countable implies $X$ is Separable.


And if $X$ is metrizable then the above three properties are equivalent.