Welcome to the forum! Please read this topic
to learn how to post code correctly and other useful info for new members.
This question has been asked and answered many times, and the only person who can answer the question is you. Search for books online. Try out the free ones or the samples for the ones you have to pay for and pick the one you like.
As you've already suggested, you can't learn a skill like programming by reading about it. You must code every example and do every exercise to gain the maximum benefit from a book. You will obtain zero programming ability solely by reading about programming. Without practice, you'll learn just as much about programming by reading the fantasy books you prefer.