I went through the same thing last year after my first fluid course. I liked the weirdness of fluid mechanics so asked a graduate student I knew what book they were using in their CFD course, which he said was Versteeg. Being overly confident, I thought I could do it you know actually understand it. The problem was that I lacked a bit of rigor or rather I did not have enough knowledge in either physics or the math to actually enjoy CFD to its fullest.
So I did the 12 steps CFD with Lorena Barba while studying Mechanics of fluid by Irving Shames. I tried reading intro to fluid dynamics by Batchelor after hearing about all the praise, but yet again I was discouraged by my lack of mathematical knowledge. So I stuck it out with Shames instead of Batchelor.
Now after being acquainted with tensor notations and following all the derivations from the texts mentioned above I started to read and do the problems out of Computational Fluid dynamics:The basics with Application by Anderson. It is great, it goes over the physical meanings of the equation very rigorously and leaves very few to your guessing.
Another problem I had with Versteeg was the fact that it lacked problem set for practice anyway, now after completing all the coding exercises in Anderson's book, I have returned to Batchelor's book. This time I actually have some idea on what is being said in that book.
Also I am about to start studying numerical computation of internal and external flows by Hirsch. What I like is the rigor and plenty of problems for practice.
You can look up diff.eq , algebra or any other math ideas you may encounter online as you proceed forward with your study.
for learning how to use numpy and scipy and python in general I just followed this thank me later ;)