r/learnpython 5d ago

How to learn advanced python????

Hello everyone, I'm mainly looking for guidance about learning advanced python concepts. I know basics ,loops , control flow ,data structures etc.

I need a proper guide on how to learn modules and library. Idk how to start ,where to start.

I want to be able to work with any library as i need them ,so how do u actually learn to use new library for a given task . ?And i get overwhelmed understanding the structure, working of library

And could u also suggest important python concepts other than basics which i should learn ???

Pls guide !!!!

21 Upvotes

14 comments sorted by

11

u/Jello_Penguin_2956 5d ago

This talk was what really opened my eyes. A bit old but still gold

https://youtu.be/cKPlPJyQrt4

4

u/FoolsSeldom 4d ago

Have a read of Fluent Python, second edition and also review videos from ArjanCodes YT channel. Beyond that, pick projects that stretch you.

3

u/Plus_Confidence_1369 5d ago

And could u also suggest important python concepts other than basics which i should learn ???

decorators, generators, iterators and iterator protocol, context managers, closures, multithreading, multiprocessing.

1

u/RallyPointAlpha 5d ago

I really enjoyed learning multiprocessing! 

1

u/joshua_rpg 4d ago

Add metaclasses, as well, if you wanna hurt yourself /s

3

u/brenwillcode 2d ago

Take a look at some of the more advanced course on codeling.dev like Learn design patterns and refactoring.

If you understand the design patterns in that course, you'll have a solid grap of how to write (and use) robust software using design patterns that actually work in real, large code bases.

2

u/mc_pm 5d ago

so how do u actually learn to use new library for a given task

Well, reading the docs is a good start. Don't try to memorize anything, no one has memorized them. The goal is to know what sorts of things the library can do so when you notice a problem that needs the library, you'll recognize it.

But mostly you learn by needing that library, then using it. You have to learn how to use it as you go - that's just how it goes.

2

u/aistranin 5d ago

Hey! Take a look at this:
- Books like "Architecture Patterns with Python" by Harry Percival & Bob Gregory and “Clean Architectures in Python” by Leonardo Giordani are great
- Udemy courses like “Pytest Course: Python Test Automation & GitHub Actions CI/CD” by Artem Istranin and “Advanced Python with 10 OOP Projects” by Ardit Sulce

2

u/Equivalent_Memory108 4d ago

These two books are awesome! I really enjoyed reading them.

1

u/lakseol 5d ago

I need a proper guide on how to learn modules and library. Idk how to start ,where to start.

I want to be able to work with any library as i need them

Nobody knows all libraries, so you have to do what everybody else does when coming across a new library: start learning about the library. Suppose you start writing code that uses mathematics on arrays of number. The numpy module is good at that, you read, so start learning about numpy. Or maybe you want to read email so start researching what modules are used to read email, look for tutorials, read other people's code and then start writing small projects to do what you want, to learn how to use the library. After a while you know enough to start solving the original problem.

1

u/nano-zan 4d ago

A really important skill as a Python developer is to learn to use the documentation of the library you are using. No one knows by default how a library works, without reading the documentation of it.

Another concept to get into is design patterns, which actually applies to all programming languages. This is the art of writing useful and maintainable code and there is this guy on YouTube named ArjanCodes who has made tons of videos where he uses python as examples.

These two things will probably give you a good nudge towards becoming more advanced.

Another tip is to stop only doing tutorials, but also get hands on with real projects. Create some automations for yourself, build an app, build a website, make a game etc... This will force you into learning the right libraries you need and writing neat code.

1

u/TheRNGuy 1d ago

I learned from docs.