[step:Identify the weight spaces and obtain the finite direct sum]
Define the finite set of characters
\begin{align*}
\Lambda:=\{\alpha_i:1\le i\le n\}.
\end{align*}
For every $\lambda\in\Lambda$, define the index set
\begin{align*}
I_\lambda:=\{i\in\{1,\dots,n\}:\alpha_i=\lambda\}.
\end{align*}
We claim that
\begin{align*}
V_\lambda=\operatorname{span}_{\mathbb C}\{e_i:i\in I_\lambda\}
\end{align*}
for every $\lambda\in\Lambda$.
First, if $i\in I_\lambda$, then $\alpha_i=\lambda$, so
\begin{align*}
\rho(t)e_i=\lambda(t)e_i
\end{align*}
for every $t\in T$. Hence $e_i\in V_\lambda$, and therefore
\begin{align*}
\operatorname{span}_{\mathbb C}\{e_i:i\in I_\lambda\}\subset V_\lambda.
\end{align*}
Conversely, let $v\in V_\lambda$. Since $(e_1,\dots,e_n)$ is a basis of $V$, there are unique scalars $c_1,\dots,c_n\in\mathbb C$ such that
\begin{align*}
v=\sum_{i=1}^n c_i e_i.
\end{align*}
For every $t\in T$, the equality $\rho(t)v=\lambda(t)v$ gives
\begin{align*}
\sum_{i=1}^n c_i\alpha_i(t)e_i=\sum_{i=1}^n c_i\lambda(t)e_i.
\end{align*}
By uniqueness of coordinates in the basis $(e_1,\dots,e_n)$,
\begin{align*}
c_i(\alpha_i(t)-\lambda(t))=0
\end{align*}
for every $i$ and every $t\in T$. If $c_i\ne 0$, then $\alpha_i(t)=\lambda(t)$ for every $t\in T$, so $\alpha_i=\lambda$ and $i\in I_\lambda$. Thus $v$ lies in $\operatorname{span}_{\mathbb C}\{e_i:i\in I_\lambda\}$.
If $\lambda:T\to S^1$ is a continuous character not belonging to $\Lambda$, let $v\in V_\lambda$ and write $v=\sum_{i=1}^n c_i e_i$. For each $i$, the identity $c_i(\alpha_i(t)-\lambda(t))=0$ holds for every $t\in T$. Since $\lambda\neq \alpha_i$, there exists $t_i\in T$ such that $\alpha_i(t_i)\neq \lambda(t_i)$, and therefore $c_i=0$. Hence $v=0$, so $V_\lambda=\{0\}$. Since $\Lambda$ is finite and the basis vectors split into the disjoint groups indexed by the sets $I_\lambda$, we obtain
\begin{align*}
V=\bigoplus_{\lambda\in\Lambda}\operatorname{span}_{\mathbb C}\{e_i:i\in I_\lambda\}=\bigoplus_{\lambda\in\Lambda}V_\lambda.
\end{align*}
Equivalently,
\begin{align*}
V=\bigoplus_{\lambda:T\to S^1}V_\lambda,
\end{align*}
because all summands with $\lambda\notin\Lambda$ are zero. Hence only finitely many continuous characters have nonzero weight space, and the asserted weight space decomposition follows.
[/step]