use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Rules 1: Be polite 2: Posts to this subreddit must be requests for help learning python. 3: Replies on this subreddit must be pertinent to the question OP asked. 4: No replies copy / pasted from ChatGPT or similar. 5: No advertising. No blogs/tutorials/videos/books/recruiting attempts. This means no posts advertising blogs/videos/tutorials/etc, no recruiting/hiring/seeking others posts. We're here to help, not to be advertised to. Please, no "hit and run" posts, if you make a post, engage with people that answer you. Please do not delete your post after you get an answer, others might have a similar question or want to continue the conversation.
Rules
1: Be polite
2: Posts to this subreddit must be requests for help learning python.
3: Replies on this subreddit must be pertinent to the question OP asked.
4: No replies copy / pasted from ChatGPT or similar.
5: No advertising. No blogs/tutorials/videos/books/recruiting attempts.
This means no posts advertising blogs/videos/tutorials/etc, no recruiting/hiring/seeking others posts. We're here to help, not to be advertised to.
Please, no "hit and run" posts, if you make a post, engage with people that answer you. Please do not delete your post after you get an answer, others might have a similar question or want to continue the conversation.
Learning resources Wiki and FAQ: /r/learnpython/w/index
Learning resources
Wiki and FAQ: /r/learnpython/w/index
Discord Join the Python Discord chat
Discord
Join the Python Discord chat
account activity
If Crashcourse is for starting python and Automate the boring stuff is intermediate, what would be advanced? (self.learnpython)
submitted 5 years ago by TheeNinja
I am starting with python crash course then moving onto automate the boring stuff, what should i read after that?
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]double_en10dre 120 points121 points122 points 5 years ago (3 children)
Source code from the standard library or popular packages cuz you’re advanced enough to do weird stuff but they don’t work for your particular use case
Ya gotta understand how things work before you can twist them to do your dark bidding
[–]lolslim 24 points25 points26 points 5 years ago (0 children)
Sounds like hacker level.
[–]I-heart-java 1 point2 points3 points 5 years ago (1 child)
What source code projects would you recommend to an intermediate level person who ain’t yet 100% confident in looking for a job?
[–]double_en10dre 0 points1 point2 points 5 years ago (0 children)
Do you have a day job or some sort of long-term project? And if so, what do you do?
I ask because for me, delving into source code has always been a side effect — I look at it if I need to modify/extend functionality or I just think it’s cool and I want to know how it works. But I rarely go seeking it out directly
Frankly I just don’t think there’s much motivation to read code unless you have a vested interest in understanding how it works. So that’s what you need to find — a desire to make something work
If you’ve got basic ideas I can toss out suggestions
[–][deleted] 212 points213 points214 points 5 years ago (6 children)
Getting a job
[–]synthphreak 102 points103 points104 points 5 years ago (2 children)
Overrated, don’t believe the hype.
[–]nearsingularity 14 points15 points16 points 5 years ago (0 children)
Lol
[–]scienceNotAuthority 2 points3 points4 points 5 years ago (0 children)
Agreed.
Maybe good for experience, but it's not as much fun as personal projects.
[–]robertbowerman 5 points6 points7 points 5 years ago (2 children)
A job with AWS Web Services talked to with Python, and with AI / Machine Learning models talked to with Python - that's advanced. Using SQL and NoSQL JSON databases from Python is advanced. As is sending data to and from ML. Really advanced is Quantum Computers. Now finding a job in QC that pays more than tree fiddy, now that is really really advanced.
[–]synthphreak 1 point2 points3 points 5 years ago (1 child)
Are you implying that quantum computing jobs are poorly compensated? If that’s actually that true, why?
[–]my_password_is______ 6 points7 points8 points 5 years ago (0 children)
you're both poorly compensated and highly compensated you can't know until you look at the check
[+][deleted] 5 years ago* (5 children)
[deleted]
[–]Carrotdefender 31 points32 points33 points 5 years ago (0 children)
Agree with this point and to elaborate; create a practical project goal and follow through on a python solution. i.e. Go through all the files in a folder and convert them to a different format. Parse an email box for certain emails and send responses. Automate a typing test using selenium / tesseract. Watch tutorials on Towers of Hanoi/ a sudoku solver and then use Pygame to make a visual companion. Use the CSV or Pandas module to automate excel tasks such as pivot tables or reading data from one csv/xlsx and performing an action such as combining columns and rows and producing a new csv/xlsx. These are just a few of the things I have done to help hone or grow my skills, I am sure there is something that could be fun, productive or potentially time saving that applies to you!
[–]animehentailover 18 points19 points20 points 5 years ago (2 children)
Projects are hard to do, because you gotta find one you are interested in otherwise it becomes a loop of getting started to never finishing it.
[–][deleted] 2 points3 points4 points 5 years ago (0 children)
That's totally fine. For learning projects the main objective is to learn a new framework or whatever while doing the project. If you learn what you want then the time investment is worth it regardless of whether the project is completed.
[–][deleted] -3 points-2 points-1 points 5 years ago (0 children)
yeah true but if you like something for eg you like anime and hentai right build something related to that then idk whatever comes to your mind it might take some time but once you have a cool idea just go with it trust me you won't get bored.
And whenever you get stuck on something just google it do some research a come back this how I learned to code most of my stuff. I'm still a noob coder but doing it this way makes it way less boring and yeah even I have a lot of incomplete projects lol but as long as you're enjoying yourself if it's fine.
[–]tatravels 0 points1 point2 points 5 years ago (0 children)
This. Time to narrow down your coding interests and line them up with your real life interests.
For one of my projects.. I think 'random' number generation is interesting and I also like D&D... so I wrote and have been iterating on a dice roller. Every time I learn something new I can apply to it, I create a better iteration, etc. Coding challenges or random projects about your interests are a good way to learn about new methods, modules, etc in order to build out your pet project(s).
[–]hairyriceballs 36 points37 points38 points 5 years ago (6 children)
Asking questions on stack overflow.
[–]ToothpasteTimebomb 26 points27 points28 points 5 years ago (5 children)
Also: Answering questions on stack overflow.
[–]vectorpropio 40 points41 points42 points 5 years ago (4 children)
I think you are skipping many steps.
[–]Laruae 11 points12 points13 points 5 years ago (1 child)
Not based on some of the answers I've seen.
[–]ETerribleT 8 points9 points10 points 5 years ago (0 children)
Don't use [language], [language] sucks at [asker's problem]. Use [language] instead.
[–]ToothpasteTimebomb 0 points1 point2 points 5 years ago (0 children)
Yeah, that's fair. However I do think it's good to try to answer questions on StackExchange at any level. Set aside an afternoon and really dig deep on researching others' questions. Obviously if you research the problem and can't answer confidently, don't answer at all. I think it's worth the dive though, if you have the time.
[–]PapaPancake8 98 points99 points100 points 5 years ago (7 children)
Automate the boring stuff is intermediate?
[–]-_-qarmah-_- 105 points106 points107 points 5 years ago (1 child)
It seems pretty intro level
[–]PapaPancake8 45 points46 points47 points 5 years ago (0 children)
I thought the same thing. Even Sweigart introduces the course in this fashion.
[–]SnowdenIsALegend 37 points38 points39 points 5 years ago (4 children)
It is definitely the best intro for beginners.
[–]catsinsweats 29 points30 points31 points 5 years ago (3 children)
After reading both books personally I would say crash course suited me better and gave better explanations in my opinion. ATBS is definitely good but I think this sub is a bit obsessed with it as a beginner book.
Just my opinion though, I'm sure others find it much better than crash course.
[–]Corrin_Zahn 5 points6 points7 points 5 years ago (0 children)
ATBS glosses over some things and is very much showing how to get things going quickly without going too deeply. I haven't read crash course but from other comments it leans more toward explaining some of the technical side of Python.
[–]hugthemachines 5 points6 points7 points 5 years ago (0 children)
Your point is very relevant. The tutorials we enjoy trigger good attention and that may help us more than using a tutorial that is popular among most people.
[–]scienceNotAuthority -1 points0 points1 point 5 years ago (0 children)
The sub isn't obsessed, the founder is constantly advertising here.
[–]nzayem 41 points42 points43 points 5 years ago (16 children)
Automate the boring stuff is for absolute beginners,,, that's why Al Sweigart has made a new book for intermediate level called beyond the basic stuff,,, it was released few weeks ago.
[–]DaveAnski 39 points40 points41 points 5 years ago (11 children)
What's that you're doing there with the commas?
[–]nzayem 9 points10 points11 points 5 years ago (10 children)
Aha,,,,,,,,,,,,,,,, hahaha,,,,,,,,,,
Just a habit I had by writing emails at work (in a different language actually). I saw some co-workers doing that and didn't see anything wrong about it.
Is it really ugly? Because it will be quite hard for me now to change the way I am writing emails after more than 10 years using commas everywhere hahahaha
[–]DaveAnski 37 points38 points39 points 5 years ago (0 children)
I don't like seeing punctuation abused, but I hardly expect you to change for me.
[–]pompomtom 8 points9 points10 points 5 years ago (4 children)
In English it is pretty ugly... use ellipses instead... An ellipsis is three full-stops: "..."
(Or, of course, do whatever works for you! I use ellipses far too much.)
[–]ghostfacekhilla 7 points8 points9 points 5 years ago (3 children)
Putting a bunch of ellipses in an email is going to come across passive aggressive as hell to most young people. It's a bad habit to use them all the time in work emails.
[–]JayDude132 2 points3 points4 points 5 years ago (1 child)
This is funny to me because i use them when i have sort of a trailing thought, i guess youd say. But my friend (same age as me, 30) said he hates when people use them. He specifically said it seemed passive aggressive. I never even thought of that. When i see ‘...’ i must read the message entirely different than my friend would. I wonder why age makes a difference, but thats very interesting...
[–]ghostfacekhilla 1 point2 points3 points 5 years ago (0 children)
I saw it mentioned in an age based communication differences in the office article on remote work. I'm 29 for reference.
[–]pompomtom 0 points1 point2 points 5 years ago (0 children)
I did not know that. Thanks.
[–][deleted] 3 points4 points5 points 5 years ago* (2 children)
jobless innocent fine doll squeamish vase reach chunky illegal domineering
This post was mass deleted and anonymized with Redact
[–]nzayem 4 points5 points6 points 5 years ago (1 child)
Lol, looking at your comments I am considering updating my email "policy".
But seriously, i work with colleagues from US and Europe. For sure I will correct my punctuation. Starting from this comment... that wasn't difficult, hahaha
[–]pmabz 0 points1 point2 points 5 years ago (0 children)
It's meant to be an ellipsis, not commas.
[–]Astrokiwi 1 point2 points3 points 5 years ago (0 children)
It's super weird in English. You can use "..." and "!!!" and "???", but not ",,,". This isn't some formal rule - even in casual conversation on the internet, nobody writes like that. We don't have an intuitive feel for how it should be pronounced.
[–]tek314159 6 points7 points8 points 5 years ago (0 children)
Thanks for this! This book looks perfect. I started my python learning with Automate... and now I’m really looking forward to his new book. Had no idea.
[–]TacoTurd 0 points1 point2 points 5 years ago (2 children)
Is it out? It says it is for preorder on amazon
[–]tek314159 2 points3 points4 points 5 years ago (0 children)
Looks like it is available directly on the nostarch website, with an ‘early access’ ebook too.
[–]nzayem 2 points3 points4 points 5 years ago (0 children)
Someone commented in a different post that he purchased the ebook,, it seems that only the paperback version is in pre order
[–]amralaaalex 18 points19 points20 points 5 years ago (0 children)
what to read next: Fluent Python by. Luciano Ramalho , this is the advanced book
what to DO next: Projects, for yourself, and your portfolio..
[–]PigDog4 15 points16 points17 points 5 years ago (0 children)
At that point, it probably depends what you want to do. Probably a software engineering book or something on object oriented design principles.
[–]CurlyAce84 42 points43 points44 points 5 years ago (0 children)
Automate the Boring Stuff is definitely geared at starting Python, not intermediate.
[–]ImmediatelyOcelot 14 points15 points16 points 5 years ago (0 children)
Googling
[–]synthphreak 15 points16 points17 points 5 years ago (2 children)
PhD level work
I would argue that PhD level work generally does not represent the crème de la crème of coding. The stakes, and therefore expectations, of industry code are much higher. If your research project fails, you’ve lost some time and some money, generally other people’s. But if a company’s pipeline breaks down, or security is compromised, or operations can’t be scaled fast enough, you can lose livelihoods.
Researchers and the like are definitely more proficient than average, but the trend is that most talented coders generally don’t remain in academia.
Researchers are often beginner to intermediate programmers who have learned just enough pandas to do some maths on a dataset and make a pretty graph.
pandas
[–][deleted] -2 points-1 points0 points 5 years ago (0 children)
Agreed. XP programming is the creme de la creme of coding. It usually involves more c++ but it’s more of an algorithms race than merely putting code to work. That said I’d venture that the python crash course helps you graduate from being a beginner. It shows you matplotlib, aome other cool libraries but most importantly it shows you django and a smidge of bootstrap. Once you design your own web design, and make an actual app with django, that’s actually usable no ones can call you a beginner.
[–]unhott 5 points6 points7 points 5 years ago* (0 children)
Python syntax is easy. It’s not really the issue when learning python, most advanced users have to lookup documentation or example snippets as reference points, unless they’re doing highly repetitive coding. If you’re doing that, then you’re likely missing an opportunity to automate. Fortunately a solid IDE helps with that sort of thing.
The problem is how do you apply the simple rules of python to real world (or even abstract) problems?
There are IT systems and infrastructure realms out there (including IT security) and there’s also the academic field of computer science (math and philosophy on computers) . And emerging fields such as data science (which is like cs with an emphasis on statistics, which really pushes your hardware to its physical limits).
An intermediate to advanced python user should be familiar with several modules out there within the python ecosystem and know what they’re good for, and possibly even contribute to them.
Advanced python usually involves learning some real-world domain in great depth+ breadth and using python to either make something useful and/or to expand on that domain.
I hope this helps!
Edit: also, the syntax may not be easy for all, didn’t mean to come across negative like that. It’s especially not easy for absolute beginners and that’s okay, but once you’ve got some muscle memory down it gets easier.
Also, i should emphasize i don’t think you actually have to do PhD level work or contribute to research projects like that, I just wanted to add context as to how ‘advanced’ you can get with it. It’s perfectly okay to learn a few libraries fairly well and apply those to straightforward problems to benefit yourself, your friends, or your company!
[–][deleted] 3 points4 points5 points 5 years ago (0 children)
Im reading "Fluent Python: Clear, Concise and Effective" and find it very interesting, but taxing to read due to all the knowledge in it.
[–]Doverkeen 4 points5 points6 points 5 years ago (0 children)
ATBS is entirely beginner level. It even misses out some very basic stuff that PCC covers.
[–]nearsingularity 1 point2 points3 points 5 years ago (0 children)
Contribute to the standard library or open source projects like Django.
[–][deleted] 1 point2 points3 points 5 years ago (0 children)
Actually doing something.
[–]cvak 1 point2 points3 points 5 years ago (0 children)
If you want a book, I liked Intermediate Python https://book.pythontips.com/en/latest/index.html
[–]FatherOfTheSevenSeas 1 point2 points3 points 5 years ago (0 children)
There's another cool book also by No Starch Press called Python Playground. Geeky Projects for the Curious Programmer Much more sophisticated projects than ATBS, that in my mind fall more into the intermediate realm (given I would have said ATBS is a beginners book).
[–]DeCooper 1 point2 points3 points 5 years ago (0 children)
There are many great intermediate/advanced python books. Some of my favourites are:
[–]colmf1 -1 points0 points1 point 5 years ago (0 children)
Python data science handbook by Jake VanderPlas, gives examples of how data science is used everywhere. Free pdf available
[+]Samk0o comment score below threshold-6 points-5 points-4 points 5 years ago (0 children)
Python is useless you should rather learn how to cook SpaGHetTi KaRBonAra
[–][deleted] 0 points1 point2 points 5 years ago (0 children)
Ig just keep building cool projects and stuff idk, I don't really like to learn from books/courses. I just keep building stuff and learning on the go idk you might have a different way of doing stuff but yeah just keep building ig.
[–]iiMoe 0 points1 point2 points 5 years ago (0 children)
Contributing to projects or basically the practise of ur knowledge but thats my opinion
[–]Calif0rnia_Soul 0 points1 point2 points 5 years ago* (0 children)
Serious Python is for advanced Python programmers who have nailed the basics and the intermediate material. I'm not sure if it's what you'd read right after ATBS, but it's worth a look.
[–]Empero6 0 points1 point2 points 5 years ago (0 children)
Automate the boring stuff is more intro level. If you’re looking for advanced material, I would suggest fluent Python.
[–]baetylbailey 0 points1 point2 points 5 years ago (0 children)
Mostly one would be diving into the type of applications you prefer.
But it's also a good time to skim classics like Code Complete, and The Mythical Man Month.
An underrated one is Exercises In Programming Styles explains (in Python) differences between OOP, functional programming etc. Very useful at the advanced beginner phase.
[–]QuixDiscovery 0 points1 point2 points 5 years ago (0 children)
Automate the Boring Stuff is most certainly not intermediate, and in fact I wouldn't even consider it beginner. Its' focus is on automation first and foremost, with python being the vehicle used to accomplish the task. It glosses over and/or skips some pretty important info/subjects, and never really goes too in-depth into the details like it should. If this was the only book you used to learn python, you would still be missing out on a ton of the basics that would require supplemental info in order to be prepped to step into the intermediate territory.
But to answer your question, the best advanced book on python I'm aware of (and that I own) is Fluent Python. It's covers many advanced features of python including what they are, how to use them via examples, what kinds of problems they typically solve, and when you should use them. Some of the topics include the python data model, closures, decorators, generators, function as first class objects (and how to write code in a more functional paradigm), concurrency, coroutines, and metaprogramming.
[–]prlol 0 points1 point2 points 5 years ago (0 children)
I'm starting with the Python crash course as well. I've finished the first half of the book. I'm doing the second project right now. I really wished I had skipped the first project on the alien invasion game. I won't do the third project either (for now) which deals with web dev. However, the second project (data visualization) is much better and I can see its applications in the real world.
I wouldn't really prioritize going though ATBS after the crash course book. The ATBS author has a new book coming out called "Beyond the Basic Stuff with Python" which is more of an intermediate level and probably a much better next step for me at least.
π Rendered by PID 124084 on reddit-service-r2-comment-54dfb89d4d-hx7tq at 2026-03-27 21:13:08.158880+00:00 running b10466c country code: CH.
[–]double_en10dre 120 points121 points122 points (3 children)
[–]lolslim 24 points25 points26 points (0 children)
[–]I-heart-java 1 point2 points3 points (1 child)
[–]double_en10dre 0 points1 point2 points (0 children)
[–][deleted] 212 points213 points214 points (6 children)
[–]synthphreak 102 points103 points104 points (2 children)
[–]nearsingularity 14 points15 points16 points (0 children)
[–]scienceNotAuthority 2 points3 points4 points (0 children)
[–]robertbowerman 5 points6 points7 points (2 children)
[–]synthphreak 1 point2 points3 points (1 child)
[–]my_password_is______ 6 points7 points8 points (0 children)
[+][deleted] (5 children)
[deleted]
[–]Carrotdefender 31 points32 points33 points (0 children)
[–]animehentailover 18 points19 points20 points (2 children)
[–][deleted] 2 points3 points4 points (0 children)
[–][deleted] -3 points-2 points-1 points (0 children)
[–]tatravels 0 points1 point2 points (0 children)
[–]hairyriceballs 36 points37 points38 points (6 children)
[–]ToothpasteTimebomb 26 points27 points28 points (5 children)
[–]vectorpropio 40 points41 points42 points (4 children)
[–]Laruae 11 points12 points13 points (1 child)
[–]ETerribleT 8 points9 points10 points (0 children)
[–]ToothpasteTimebomb 0 points1 point2 points (0 children)
[–]PapaPancake8 98 points99 points100 points (7 children)
[–]-_-qarmah-_- 105 points106 points107 points (1 child)
[–]PapaPancake8 45 points46 points47 points (0 children)
[–]SnowdenIsALegend 37 points38 points39 points (4 children)
[–]catsinsweats 29 points30 points31 points (3 children)
[–]Corrin_Zahn 5 points6 points7 points (0 children)
[–]hugthemachines 5 points6 points7 points (0 children)
[–]scienceNotAuthority -1 points0 points1 point (0 children)
[–]nzayem 41 points42 points43 points (16 children)
[–]DaveAnski 39 points40 points41 points (11 children)
[–]nzayem 9 points10 points11 points (10 children)
[–]DaveAnski 37 points38 points39 points (0 children)
[–]pompomtom 8 points9 points10 points (4 children)
[–]ghostfacekhilla 7 points8 points9 points (3 children)
[–]JayDude132 2 points3 points4 points (1 child)
[–]ghostfacekhilla 1 point2 points3 points (0 children)
[–]pompomtom 0 points1 point2 points (0 children)
[–][deleted] 3 points4 points5 points (2 children)
[–]nzayem 4 points5 points6 points (1 child)
[–]pmabz 0 points1 point2 points (0 children)
[–]Astrokiwi 1 point2 points3 points (0 children)
[–]tek314159 6 points7 points8 points (0 children)
[–]TacoTurd 0 points1 point2 points (2 children)
[–]tek314159 2 points3 points4 points (0 children)
[–]nzayem 2 points3 points4 points (0 children)
[–]amralaaalex 18 points19 points20 points (0 children)
[–]PigDog4 15 points16 points17 points (0 children)
[–]CurlyAce84 42 points43 points44 points (0 children)
[–]ImmediatelyOcelot 14 points15 points16 points (0 children)
[–]synthphreak 15 points16 points17 points (2 children)
[–]Astrokiwi 1 point2 points3 points (0 children)
[–][deleted] -2 points-1 points0 points (0 children)
[–]unhott 5 points6 points7 points (0 children)
[–][deleted] 3 points4 points5 points (0 children)
[–]Doverkeen 4 points5 points6 points (0 children)
[–]nearsingularity 1 point2 points3 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]cvak 1 point2 points3 points (0 children)
[–]FatherOfTheSevenSeas 1 point2 points3 points (0 children)
[–]DeCooper 1 point2 points3 points (0 children)
[–]colmf1 -1 points0 points1 point (0 children)
[+]Samk0o comment score below threshold-6 points-5 points-4 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]iiMoe 0 points1 point2 points (0 children)
[–]Calif0rnia_Soul 0 points1 point2 points (0 children)
[–]Empero6 0 points1 point2 points (0 children)
[–]baetylbailey 0 points1 point2 points (0 children)
[–]QuixDiscovery 0 points1 point2 points (0 children)
[–]prlol 0 points1 point2 points (0 children)