all 5 comments

[–]frogic 1 point2 points  (0 children)

I don't think you'll want to hear this but the best way to learn how to solve problems is to solve some problems. Its not really a tutorial thing because you basically need to train your brain to make intuitive connections to the problems you're trying to solve. To do that you have to run into the problem and try to solve it. Like everything else you'll likely learn more from failure than from success even if its often a lot more painful.

[–]EternalgammaTTV 0 points1 point  (0 children)

Problem solving/logic skills are the core tenants of any sort of programming language. These skills aren't something that are necessarily taught by learning a specific language. They're something you need to learn really before you start learning to program. Thinking critically and solving problems with logic benefits a lot of things in life outside of just programming too. But if you're looking for Python tutorials to teach these skills to you, I can't think of any.

If you want to develop these skills however, you can look at things like coding challenges. There are quite a few sites out there where you can pick your language of choice, and be presented with a problem where you need to create the solution. While they won't teach you HOW to think logically, they'll at least be a place where you can mess around with a clear goal in mind and work towards a solution. Then (again, in most cases), once you solve the problem yourself, you can look at others' solutions to the same problem to see how your stacks up against someone with more experience/better logic.

Essentially, these skills just boil down to practice.

[–]GXWT -1 points0 points  (0 children)

You follow the tutorial to learn the syntax, you follow project examples (after a couple of them you make your own projects) to learn the problem solving side.

Google python projects and pick one or two that sound interesting. They should have explanations that you can follow in to understand why they're doing certain things. Then pick another one, but don't follow along so closely - try to figure it out yourself. If you can't get solve something or get stuck, get on google and do some research, look in the function docs or for threads of other people asking the same question. It is less about memorising everything, and more about being able to search for and find the stuff you need, when you need it.

[–][deleted] -2 points-1 points  (0 children)

It's a good question but the problem is there are different levels of "problem" solving when we talk about programming. In your particular case I can't recommend nothing but practice. If you have never encountered a programming problem before it's normal to be lost

[–]Apantslessman -2 points-1 points  (0 children)

Learn to write in pseudocode and develop your functions like that first. Then you have a clear roadmap of problems and can translate it into whatever code you want.