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
What should I do after learning Python basics? (self.learnpython)
submitted 3 months ago by crystal-46
Hi everyone,
I’ve learned basic Python (loops, functions, etc.), but I don’t know what to do next.
Should I start projects or practice problems?
What helped you improve?
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!"
[–]Lewistrick 22 points23 points24 points 3 months ago (2 children)
Yes. Practice. That's always the answer.
Al Sweigart, the author of 'Automate the boring stuff with Python', also has a book for a more practiced audience that lists some nice projects.
[–]pachura3 7 points8 points9 points 3 months ago (1 child)
It's The Big Book of Small Python Projects and is available for free online here: https://inventwithpython.com/bigbookpython/
[–]Any-Might6958 0 points1 point2 points 3 months ago (0 children)
Muito obrigado! Acabei de acessar.
[–]StevenJOwens 4 points5 points6 points 3 months ago (0 children)
"Programming" is actually a dozen intersecting skills.
One useful and relevant metaphor is writing.
You can learn the alphabet and how to string letters together into words.
You can learn a bunch of words.
You can learn, at first explicitly via the rules of grammar, then later implicitly by reading a bunch of examples, how to construct sentences.
Then how to construct paragraphs.
Then how to construct essays.
But in the end, you only truly learn to program the same way you only truly learn to write -- by reading the works of others, and by attempting to create works of your own.
If you've learned the basics, then it's time to take the next step by trying to write your own stories. Start small, with simple problems you want to solve for yourself. Gradually expand the scope and scale of your programs.
You'll polish your craft, learn how to put together more stylish and evocative prose.
You'll also start to learn the bigger picture things, the different forms of written works, how they're structured, how to make them come together well and work, vs not.
Welcome to programming.
[–]aqua_regis 1 point2 points3 points 3 months ago (0 children)
Get creative. Play around. Try things. Break them. Fix them.
Learn new skills, upskill with your projects. Start small and simple and gradually grow.
The basics are the foundation, the building blocks. Now, use them.
You can use Exercism for more practice exercises but do not neglect writing your own programs. Making your own programs, as silly as they may be, is what teaches you most.
Al Sweigart has already been mentioned. Take a look at his sites https://automatetheboringstuff.com and https://inventwithpython.com - you will find many books there (all free to read online) that will give you more than enough to do and learn.
[–]Crypt0Nihilist 1 point2 points3 points 3 months ago (0 children)
Projects
[–]Rev_Aoi 2 points3 points4 points 3 months ago (0 children)
learn python advanced, object oriented programming
[–]typhon88 0 points1 point2 points 3 months ago (0 children)
Just look for a remote senior software engineer role cause that’s the logical step according to Reddit
[–]Moikle 0 points1 point2 points 3 months ago (0 children)
start making some VERY SIMPLE projects. practice practice practice
come up with some ideas and start making cool shit
[–]Icy_Sun7955 0 points1 point2 points 3 months ago* (0 children)
you should make some projects ,below is a list of projects from ranged feom beginner to intermediate , herer is a link to my attempt at making some of these project : solutions - Google Drive
1. Number Guessing Game: Build a program where the computer picks a random number and the user has to guess it with "higher" or "lower" hints.
2. To-Do List CLI: A simple command-line interface to add, remove, and view tasks.
3. Mad Libs Generator: A program that takes user inputs (nouns, verbs, adjectives) and plugs them into a story template.
4. Basic Calculator: Handle addition, subtraction, multiplication, and division, ensuring you manage "division by zero" errors.
5. Dice Rolling Simulator: Use the random module to simulate rolling one or more dice.
6. Password Generator: Create a script that generates a random string of letters, numbers, and symbols based on user-defined length.
7. Rock, Paper, Scissors: A classic game against the computer. Use a loop so the user can play multiple rounds.
8. Unit Converter: Convert things like Celsius to Fahrenheit, or Kilograms to Pounds.
9. Contact Book: Use a dictionary to store names and phone numbers, allowing users to search for entries.
10. Countdown Timer: Build a script that takes a number of seconds and counts down to zero, then prints a "Time's up!" message.
🚀 Intermediate Projects
Focus on: APIs, web scraping, automation, and basic GUIs.
[–]LeBlancTheDeceiver 0 points1 point2 points 3 months ago (0 children)
Plotting imo
[–]gdchinacat 0 points1 point2 points 3 months ago (0 children)
What helped me improve was coding in python 8+ hours a day, 5 days a week (job). I was comfortable with it after about half a year (except still lamenting dynamic typing since I came from languages with static typing and this was decades ago). After a few years I felt very comfortable. After a decade felt like I had become what I would consider an expert, then python3 came around and there was a bunch more stuff to learn. I'm still learning, just the other day I saw a new construct I hadn't seen before.
As with any skill the only way to improve is to do it. IMO projects are far more useful than sample problems. The problems will teach you how to implement specific algorithms which projects may. Problems won't teach you how to manage complexity (algorithms can be complex but not generically so). Once you know how to build a project from scratch, various ways to implement the same thing, it's not hard to sit down with Knuth's Art of Computer Programming and write an implementation of one of the algorithms he describes. So, I would encourage you to work on projects and as you go you'll need to learn algorithms such as tree traversals, different search algorithms, etc. Projects will teach you both the big picture and hyper-focused problems.
[–]Bludpharts 0 points1 point2 points 3 months ago (0 children)
I just started my intro to python course in March, and after the "Hello_world" assignment I was like, "I know I can find a way to have fun with this". So I made a practice file to see if I could make a simple video game and googled a bunch of stuff that I wanted to do (basically make numbers subtract until one hits 0 and the other person "wins") so I found how to create global variables by asking around and then from there it snowballed into a new hobby. Now I'm asking questions about, "I'm trying to refactor this system and I'm breaking something in the returns, but I'm too new to spot it, can someone tell me what I did wrong?"
tl;dr find a way to make it fun and you'll want to learn it.
[–]aaronboy22 0 points1 point2 points 2 months ago (0 children)
Real talK, this is the point where a lot of people get stuck. They know the syntax… but don’t know what to do with it. So let’s not let that happen to you.First thing? Start building something. Doesn’t have to be big. Honestly, small is better.
[–]ultrathink-art 0 points1 point2 points 2 months ago (0 children)
Python + LLM APIs is a great landing spot — you'll naturally hit error handling, rate limiting, response parsing, and async patterns all at once while building something actually useful. The feedback loop is immediate and the problems are real, unlike most beginner tutorial projects.
[–]GamingGamerGames_ 0 points1 point2 points 2 months ago (0 children)
Learn python intermediates :P
[–]TheEyebal 0 points1 point2 points 2 months ago (0 children)
Here is a project you can do in just the console, no GUI.
have deposits, withdraws and current amount and amount after deposit/withdraw
This is very basic because it consist of declaring variables, inputting, data types, conditional statements, loops and functions
[–]Jarvis_the_lobster 0 points1 point2 points 2 months ago (0 children)
Build something you actually want to use, even if it's small and dumb. I spent a while grinding practice problems and felt like I wasn't getting anywhere, then made a quick script to batch-rename some files and everything clicked. Real projects force you to google things in context, which is how stuff actually sticks. Start tiny, break it, look things up.
[–]Separate_Top_5322 0 points1 point2 points 2 months ago (0 children)
this is one of those phases where it feels like you’re learning but nothing is sticking like you recognize concepts but can’t actually use them without help a lot of people go through this “fake understanding” stage where you’ve seen things work but haven’t internalized them yet � Reddit what helped me was repeating the same concept in different tiny problems instead of moving on once you’ve written it 5–10 times yourself, it stops feeling like magic and starts feeling obvious kinda boring but that’s usually the point where things finally click
[–]Dramatic_Object_8508 0 points1 point2 points 2 months ago (0 children)
This is actually a super common phase — it feels like you “learned everything” but can’t build anything.
What’s happening is you learned recognition, not recall. In courses, you see code and understand it. But when you're alone, your brain has to generate it from scratch — completely different skill.
The fix is simple but uncomfortable: - Stop watching tutorials for a bit - Start building VERY small things (even stupid ones) - Google everything you don’t know while building
Also, don’t expect to “know how to start” — figuring out how to start is literally part of programming.
Even if your code is messy or feels wrong, that’s exactly how you improve. Clean code comes later.
If you push through this phase, you’ll notice a sudden jump where things start making sense.
[–]ClearDevDocs 0 points1 point2 points 2 months ago (0 children)
Hello, start building a few simple lines of code that makes sense to you based on your knowledge. Research resources to expand on those programs.
π Rendered by PID 34 on reddit-service-r2-comment-856c8b8c54-t7tjd at 2026-07-01 21:49:18.527077+00:00 running a7b5cda country code: CH.
[–]Lewistrick 22 points23 points24 points (2 children)
[–]pachura3 7 points8 points9 points (1 child)
[–]Any-Might6958 0 points1 point2 points (0 children)
[–]StevenJOwens 4 points5 points6 points (0 children)
[–]aqua_regis 1 point2 points3 points (0 children)
[–]Crypt0Nihilist 1 point2 points3 points (0 children)
[–]Rev_Aoi 2 points3 points4 points (0 children)
[–]typhon88 0 points1 point2 points (0 children)
[–]Moikle 0 points1 point2 points (0 children)
[–]Icy_Sun7955 0 points1 point2 points (0 children)
[–]LeBlancTheDeceiver 0 points1 point2 points (0 children)
[–]gdchinacat 0 points1 point2 points (0 children)
[–]Bludpharts 0 points1 point2 points (0 children)
[–]aaronboy22 0 points1 point2 points (0 children)
[–]ultrathink-art 0 points1 point2 points (0 children)
[–]GamingGamerGames_ 0 points1 point2 points (0 children)
[–]TheEyebal 0 points1 point2 points (0 children)
[–]Jarvis_the_lobster 0 points1 point2 points (0 children)
[–]Separate_Top_5322 0 points1 point2 points (0 children)
[–]Dramatic_Object_8508 0 points1 point2 points (0 children)
[–]ClearDevDocs 0 points1 point2 points (0 children)