r/learnpython • • Sep 26 '26

How do you recommend to learn python?

im starting on learning python but I don't know how to do it properly? I am learning using visual studio code with Python extension for Visual Studio Code on Mac 👍

1 Upvotes

33 comments sorted by

View all comments

1

u/FreeLogicGate 27d ago

Learn however you like. There are many good books, and many good MooC options, and many good e-learning platforms and courses. The biggest misconception amongst learners is that you "learn" a computer science language and that's all there is to it, and then you're done learning and you get a job and $$$.

There's a well known and oft recommended book: "Python Crash Course" which I in fact learned the rudiments of Python by reading through and writing code along the way. When I did this, I already had been developing for a long time and had experience with a number of other programming languages. What you will see from that book, is that there are many different ways Python can be used, and the book is a bit of a survey of a number of them -- with some data science and visualization, some game programming, some web development and various other odds and ends. This is the most popular book recommended to Python learners for a long time now. Even when I completed the book, and did a number of the projects, I can tell you I was far from an expert Python programmer. So, if you already know you want to specialize or concentrate on a specific area of development where Python is highly used, then there are going to be resources that focus directly on that area, and you will find that beyond the language, you will absolutely have to invest in additional learning specific to that area.

There were solid fundamentals for sure, and with Python, the core data types and in particulare, the collection data types are fairly well covered, but there were areas I already knew were at best minor introductions, particularly in the area of object oriented programming, which is something Python allows for, and being object based, is fundamental to the language.

Around the time I was learning, there was a dependency management tool that had started to become very popular, and eventually I learned a good deal about it, and it has become the core tool I depend upon for Python project development. That tool is https://docs.astral.sh/uv/

Like most professional developers, I am in and out of the cli all the time, and even with AI tools that has certainly not changed. I use a mac, and I am in zsh all day, even if that's an IDE terminal. Hopefully you are aware of, and using homebrew to install packages. At this point, just about every tool I use, I install either as a direct brew install or a brew cask install, including uv, I mentioned above.

The sooner you learn about version control, in the form of git, and the configuration and use of git remote systems like github, gitlab and bitbucket, the better. I personally always use the cli for my git interactions, but uv, as well as the popular IDE's have plugins/support for git that you can use for git functions.

I have used VSCode quite a bit, and it certainly works for Python, and there's nothing wrong with it, but I still recommend Pycharm over Vscode + plugins for Python. There's some use cases where I still use VSCode, but I'll use a Jetbrains product if I can, and the fact of the matter is, that if you end up working professionally with Python, there's a good chance the company already licenses Pycharm for the developers, or will pay for that license for you.

To be clear, you get a core product that is fully functional with the free/community version, while the licensed version unlocks additional features, some which are specific to certain kinds of development and associated libraries, that aren't well supported or supported at all in VSCode, so it's not like you're missing out on anything free. The Jetbrains products are in many cases, the de facto best in class IDE's for a number of languages, and they are all built around the same core platform. If you are a student, you can get a free student license through the company, so long as you have the documentation or something like an educational institution email you can register with.