COVER_FRONTLearn to Think Like a Programmer.

Thoroughly revised for the latest version of Python, this book explains basic concepts in a clear and explicit way that takes very seriously one thing for granted—that the reader knows nothing about computer programming.

Addressed to anyone who has no prior programming knowledge or experience, but a desire to learn programming with Python, it teaches the first thing that every novice programmer needs to learn, which is Algorithmic Thinking. Αlgorithmic Thinking involves more than just learning code. It is a problem-solving process that involves learning how to code.

This edition contains all the popular features of the previous edition and adds a significant number of exercises, as well as extensive revisions and updates. Apart from Python’s lists, it now also covers dictionaries, while a brand new section provides an effective introduction to the next field that a programmer needs to work with, which is Object Oriented Programming (OOP).

This book has a class course structure with questions and exercises at the end of each chapter so you can test what you have learned right away and improve your comprehension. With 250 solved and 450 unsolved exercises, 475 true/false, about 150 multiple choice, and 200 review questions and crosswords (the solutions and the answers to which can be found on the Internet), this book is ideal for

  • novices or average programmers, for self-study
  • high school students
  • first-year college or university students
  • teachers
  • professors
  • anyone who wants to start learning or teaching computer programming using the proper conventions and techniques


(*) Tested on amazon Kindle e-reader (8th Generation), Kindle for PC and Kindle for Android. It looks quite messy on Kindle Cloud Reader.  If you encounter any problem on your device send me a message, including your e-reader’s model and any screenshots or photos (if possible).


Material about this book:

Customer Reviews (for 2nd Edition)

Best of all thus far

I have been studying Cybersecurity and subsequently Python Programming as well. There are hundreds of books on Python, but only a few are articulate and informative. Out of the many books I have read and reviewed, this is the best I have encountered. The language is easy to understand and the teaching style with the exercises, quizzes and crossword puzzles are fantastic. I highly recommend this author and his books. The best I have found thus far.


Logical, systematic approach written by someone who obviously wants you to understand

Fantastic, lots of opportunities to cement learning and everything is broken down. Thank you very much for a fantastic book which will help me pass my course.


Go for it!!!

Very good book for beginners. I heve learn a lot from this book.


Best Python Book.

This book is by far the hands-down best book for learning the Python language. Clear and understandable copy with tons of review problems. This book goes a long way to making Python a language you will come to learn in a relatively short time.


This the “NEO” of Python Learning.

If you want to learn about Python, this is the book for you. As a beginner in programming, I’ve searched and bought many books regarding Python. Unfortunately I got stuck a few times which led me to waste a day or two figuring out the problem. Note: Getting lost and figuring out the problem is sort of a good method to learn programming cause you translate it to your own language however, it could be discouraging as a beginner. At one point I felt so discourage that I started to look at Python for Kids to understand the foundation in general. Those are easy and very good in terms of learning Python however, it was not the end goal. I stumbled one this book as a last resort and I FINALLY found what I’m looking for.

This books has the proper foundation to learn Python. It starts with the introduction of what a PC, Software and Hardware is.. Easy stuff right? Well, they give you exercise at the end of chapters and you’d be surprised how many you could get wrong so see this as a refresher. Then it introduces Python and its functions. The explanation is so detailed that it answered questions I had from those previous books. Even though I’m starting again, I feel comfortable and understand what I am reading and the reason behind it. I bought it yesterday and I’m already jumping into Ch. 4. That’s how good it is.

The only disappointment I have is that I’m using Kindle PC to study this and can’t copy and paste. I completely understand the reason so is not a show stopper. As a beginner, I have created a method to circle back to my notes so rather than highlight it on Kindle, I have everything I study in a document with examples (my own terms) to go back whenever I’m stuck. The copy-paste is a time saver!

Overall, I congratulate the author for this book. I highly recommend it.


Old School – love it!!

Very Good!

I have bought many Python books but none of them have that aha to them, this one did it. If you are into old school teaching, this book is for you. The book shows the authors really cares that the reader learn the stuff and learn it good.

The book is conversational (IMHO) and starts out teaching you about PC, in general, and then lots of paper and pencil work on the language! Then throws you into the PC environment.

The authors shows you how to install Eclipse (no “see Appendix”, this is a full out chapter in the book). They walk you through how to write and debug programs in Eclipse. This is important because you want to get a feel on how “projects” work (vs. IDLE). Thus, preparing you to hit the ground running when you get that job (or even good for your job interview).

Give it a shot, it will be the best $45 or $10 (if you get kindle) you ever invested in. Thank you authors!


Excellent Python book for beginners.

I think that this book by Mr. Bouras is excellent! I learn best by reading and doing examples – this book fits my learning process to a T.


Great for complete beginners.

Great guide for complete beginners. The tempo is right and it not only teaches you the language, but also explains hiw computers “think”, with pleanty of examples and exercises.


Customer Reviews (for 1st Edition)

Good choice for people who are absolute beginners

It is good a choose for people who pick Python for first programming language but it is nothing beyond how to use for, if, while. The book explain basic concept in very explicit way. I will recommend this book to someone with zero programming skills.


The Best book for learning Python on the market today

I have reviewed about a dozen books available on the marked in an attempt to learn Python. This book “Python and Algorithmic Thinking” by Aristides S Bouras is perhaps the best investment I made. The book is written for “absolute beginner,” real easy reading and easy to understand. The only one complaint (flaw) I found with the book is that the author teaches you coding the hard way. He uses Oracle’s Eclipse IDE (Integrated Development Environment) I am not a college student, and I do not “KNOW” any computer languages. When I read this book I found that learning and understanding the Python using this book was the most easiest thing. The hard thing for me was learning the Eclipse IDE, but I persisted and endured the hardship, in the end I was happy that I decided to take the difficult path as was intended by the author. I am glad I did. Almost everyone knows that you can write code in a mere text editor, so why worry about the difficult to learn Eclipse IDE. This books seems to be written as a text book for college students. I believe the author wanted to get you to use the most powerful tool available on the market. The ultimate objective is that you be extremely skilled not just in the language, but also in various tools available to build software. In conclusion this flaw is actually a benefit or an ADVANTAGE. I am very happy with this purchase. In my opinion it is worth every penny I paid and then some.


I recommend this book

for those that have no programming knowledge or experience at all and are looking to get into programming with python. this is the Book For YOU, There are a lot of great informational books out there and all have great python knowledge to offer but if your someone that knows Nothing about programming and want to know where to start ….START HERE. this book has a class course structure with quizzes at the end of each chapter. to Test what you ‘ve learned right off to work your comprehension.


Amazon Customer
I highly recommend this book to anyone who really wants to understand …

This book is a refreshing departure from the extremely topical approach taken by some other books. It goes beyond memorizing and regurgitating and, instead, focuses on comprehension- therefore enabling the reader to truly understand what he/ she is doing. The book is full of information and is extremely user- friendly. I highly recommend this book to anyone who really wants to understand the “hows” and “whys” of programming using Python. As the authors state, the book won’t teach one to program in one day- or in several days… But it will give you a solid foundation in programming with Python so that you will feel confident and will know what you are doing and why you are doing it.


An excellent book for beginner programmers

Excellent book. In-depth study of programming with emphasis on Python 3. One of the best I have read, need to go back and read it again, so much material to absorb in one reading. Need to read it like a math book. Lots of problems with solution.


The best introduction to Python I have seen.

Great introduction to Python and programming in general. Needed to find a couple of the Internet setup links because the book is more than a month old, but the setup instructions are complete and clear.


A Complete Course in Python!

Still going through this treatise on the Python language and learning so much. This book is truly a complete training course in the Python language. If you are interested in learning Python then this book will be the foundation by which you could build your programming future on.


Algorithmic thinking pure

If you have never used your PC for programming… start here
This book will teach you the fundamentals. There are plenty of examples and you will develop an ability to understand the overall concepts of:
Sequence control structure
Decision control structure
Loop control structure
and much more… + Python is very popular language…


Good book to start with Python without any programming background

Good for begineers in programming with lot of examples to solve.


I have to say that it is amazing. I wish I were lucky enough to find …

I bought this book from Barons Nobel due to the coupon I had. About the book, I have to say that it is amazing. I wish I were lucky enough to find such a book to head my destiny to computer programming rather than engineering. This is the book as author claims take you from zero in programming knowledge to where you want. If you have any bad experiences about reading different programming books, just try this book and you don’t get disappointed. Every day I eagerly waiting to get home to start reading this book to probably change my career as soon as possible after finishing this book. Please click on ” look inside” and review the book and I am sure there are lots of things you will learn in this 732 pages book.


Clear, concise approach to learning the foundations of programming.

I’ve been trying to take a more systematic approach to learning programming instead of searching for every solution on Stack Exchange and trying to get them to fit what I want to do. This book has been great!


Great book to learn from 🙂

Remarkably crystal clear explanations! I can easily understand the content!


Excellent book, full of examples and very well structured …

Excellent book, full of examples and very well structured for anyone who wants to learn and master the Python programming language.


Dr Ch. P. K.
Another book by Aristides that is a true wonder: …

Another book by Aristides that is a true wonder: What people might not know is that all his books follow the same strategy and examples/ exercises in parallel, in that way you can read them all at the same time and that way in a comparative way figure out how programming languages work in a different way.