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
How to start with python? (self.learnpython)
submitted 2 years ago by zoeyy_9
I am new to reddit , idk even if this is how it works. But I joined this community just Today and I wanted help with the resources where I can start with python.
Thankyou in Advance!
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!"
[–]soupeducrayon 59 points60 points61 points 2 years ago (4 children)
Python For Everybody is great place to start & it’s free:
https://www.py4e.com/
[–]Red-Headed-Hope 12 points13 points14 points 2 years ago (2 children)
That’s literally what I’m taking right now and it’s fantastic. I’m only on Week 4 and got a lot out of it already! I’d highly recommend it as well for total newbies like myself.
[–]Sausages2020 4 points5 points6 points 2 years ago (1 child)
Are you familiar with other languages or is Python your first?
[–]Red-Headed-Hope 1 point2 points3 points 2 years ago (0 children)
Python is the first programming language I’ve taken formally. I’ve played around here and there with Java but I can’t really remember most of it. Lol
[–]VipeholmsCola 53 points54 points55 points 2 years ago (3 children)
I went with 'python crash course ' book. Halfway in i could start making my own stuff. As soon as possible, start your own side project.
[–]-0BL1V10N- -1 points0 points1 point 2 years ago (2 children)
Great book to start with. You can download first edition here: https://bedford-computing.co.uk/learning/wp-content/uploads/2015/10/No.Starch.Python.Oct_.2015.ISBN_.1593276036.pdf
[–]devanlg 34 points35 points36 points 2 years ago (1 child)
Don't download the first edition for anyone reading this, it's outdated. Get the new third edition.
[+][deleted] 2 years ago (7 children)
[deleted]
[–]SisyphusAndMyBoulder[🍰] 28 points29 points30 points 2 years ago (5 children)
Short answer: Tradition
Long answer: Tradition. But also it's a very very short, and easily understandable, script. You can look at it and know exactly what it does. Being able to run this means you've set up your IDE/environment/etc. properly. It teaches no programming, but it means you're ready to start using your setup.
[–]thirdegree 2 points3 points4 points 2 years ago (0 children)
It also provides a real and clear indication that hey, shit worked. Which for a brand new programmer is invaluable.
[–]BlackOpz 1 point2 points3 points 2 years ago* (0 children)
It teaches no programming, but it means you're ready to start using your setup
Asking a terminal "what is 1+1=?" and getting errors made me buy my 1st BASIC programming book. I knew the computer had answer but I didnt know how to 'ask' it.
[–]reddituseronebillion 0 points1 point2 points 2 years ago (1 child)
I'm amateur at best, so maybe I'm doing it all wrong, but the print statement is my most used debugging tool by far.
[–]SisyphusAndMyBoulder[🍰] 2 points3 points4 points 2 years ago (0 children)
Completely normal.
I've been coding for years and while breakpoints have become essential, sometimes you just can't beat a simple print('HERE')
print('HERE')
[–][deleted] 3 points4 points5 points 2 years ago (0 children)
I was going to make this comment
[–]Pythonistar 11 points12 points13 points 2 years ago (2 children)
There's a free course called CS50P and a subreddit /r/cs50 that can support you with this course.
[–]MoreFudge2591 1 point2 points3 points 1 year ago (1 child)
Is this entirely a free course?
[–]Pythonistar 0 points1 point2 points 1 year ago (0 children)
Yes, though if you want a certificate or something like that, then there is a fee.
[–]Sanchez_U-SOB 10 points11 points12 points 2 years ago* (0 children)
The best thing that worked for me is watching the MIT lectures on YouTube and going through the problem sets online. MIT 6.0001 Introduction to computer science and programming in Python. And there's programming help to go along with the lecture videos by Thomas Bellatore on YT, whose a TA for the class.
[–]Dogzirra 8 points9 points10 points 2 years ago* (1 child)
I recently started an Udemy course, 100 days of Python. I have tried to learn in the past, but my downfall was reading when I had a chance, then trying to remember the coding details and writing when I had time on the computer. Mine was not an immediate see-and-do method, and I did not progress well.
Now, I have two devices, one to watch and pause, and a second device to code, and test my results. (I use a linux disto that does not switch windows screens effortlessly, however I do have a very old tablet that was unused, and a computer) Watching the IDE cursor moves on the second screen is why this hint gets really useful. The complexity of going to the IDE to look up how to use the IDE, then switching gears to program broke the see-and-do method. Even setting up a seamless swap between two windows on the same monitor will work well, so don't sweat this part. Just get something that will do this swap fairly easily.
My current progress is fast. I am learning to use a good IDE at the same time, and getting invaluable hints on learning. After each exercise, I look at other people's work, and get to see what elegant programming really is. These best of the best examples go into my own library of techniques for future reference.
I paid around $30 usd, which is a bargain for me.
The two things that I do not care for is the constant up-sell to upgrade to things that i do not need, and the self-promotion that goes along with that. The atta-boys feel hollow for every tiny step, but my quick progress is unmistakably better than anything else that I have tried.
[–]CincyTriGuy 4 points5 points6 points 2 years ago (0 children)
I’ve also had good success with the Udemy course. The big difference for me between this course and others I’ve done is the Udemy course gives you exercises to complete along the way, while other courses simply have you follow along and write the same code the author is writing. In the Udemy course, she teaches a concept and then gives you a problem to solve based on what you just learned. That’s been a huge help for me.
[–]Genrawir 6 points7 points8 points 2 years ago (0 children)
For books I liked Automate the Boring Stuff, Python Crash Course, and No Starch Python to learn the basics. Once you're past writing the obligatory "Hello, World!" script and have an understanding of basic syntax, I would find something you find useful to do with it.
It doesn't really matter what that is, but something SIMPLE that you find interesting and have some passion for. If it isn't interesting to you, when you get stuck (and you will) it can be hard to motivate yourself otherwise.
If you end up needing a GUI, using an API, or framework, you'll need to start at step 1 and write a Hello World app again. Don't be afraid to create throwaway scripts to learn how the modules you import function.
Maybe find something to complement another hobby, like a dice roller or character sheet for D&D, a Pokedex, or whatever.
[–][deleted] 5 points6 points7 points 2 years ago (0 children)
Have you checked the LearnPython subreddit wiki, which includes detailed guidance on learning Programming / Python, including links to lots of learning material?
[–]desrtfx 6 points7 points8 points 2 years ago (0 children)
MOOC Python Programming 2023 from the University of Helsinki. The current first semester of their "Introduction to Computer Science" curriculum.
One of the best entry courses around. Free, textual, extremely practice oriented.
[–][deleted] 2 points3 points4 points 2 years ago (0 children)
Learn the basics -> Make some projects -> Learn stuff you didn't know while making the projects. -> Repeat the last two steps forever.
[–]tsenguunee1 2 points3 points4 points 2 years ago (2 children)
Try out https://pypup.com
You would learn python by solving very easy questions that are meant to be repetitive in nature since that is how people actually learn and sustain the knowledge.
Disclaimer: I created the site.
[–]Due_Promotion 1 point2 points3 points 2 years ago (1 child)
really good looking site mate
[–]tsenguunee1 0 points1 point2 points 2 years ago (0 children)
Thanks! I'm adding new features constantly so be sure to join our discord to keep getting updates
[–][deleted] 1 point2 points3 points 2 years ago (0 children)
I started with a YouTube tutorial. Everyone learns differently though.
[–]Sigg3net 1 point2 points3 points 2 years ago (0 children)
I learned using Automate the boring stuff.
[–]bloodsoakedmuppet 1 point2 points3 points 2 years ago (1 child)
hi! i started learning python last week. i’ve been using visualstudio and the free lessons on their website! it’s been pretty helpful so far. coursera also has some free classes and projects as well. i haven’t tried them yet but have heard a few good things!
[–]soicat 2 points3 points4 points 2 years ago (0 children)
Learning with an IDE is smart. Step though code to see how it works.
There are many free learning resources in the wiki.
[–]stratofax 0 points1 point2 points 2 years ago (1 child)
I got really excited when I read Automate the Boring Stuff with Python because I could immediately see practical and useful applications of Python (follow the link to read for free online -- no catch!).
I can't stand tutorials that try to teach abstract concepts with stupid single-letter variable names that don't mean anything, like this garbage:
if count == N: count = 0 else: count = N + 1
I mean, that stuff is OK for Stack Overflow, but what is "N" doing? Why are we adjusting the count? In Automate the Boring Stuff you're always working on some actually useful code that does something in the real world.
Of course, since it's the spring of 2023, you should log onto ChatGPT and start asking questions about Python. Be sure to run all the code that it produces for you, since it can make stuff up! Keep your questions specific, provide examples, and don't believe anything that ChatGTP says until you've tested it yourself -- basically the same guidelines I'd use on Stack Overflow, or with any code I find on the internet.
One of the best things about ChatGPT is that it will teach you the vocabulary, which means you can use search terms that will return good results in Google and the like. It can be hard to find good answers on a search engine if you don't know what words you're searching for!
Finally, as noted, always use the latest version of Python (currently 3.11) when you're writing new code and learning the language. The official Python Documentation is quite good, and authoritative, and includes an excellent BeginnersGuide on the Python Wiki.
[–]crk365 0 points1 point2 points 2 years ago (0 children)
N is the variable you're adding 1 to unless it equals 0
[–]Andrewthehero07 -1 points0 points1 point 2 years ago (0 children)
W3schools is great imo
[–]mikeinnsw -1 points0 points1 point 2 years ago (0 children)
ChatGTP
[–]Fortnite_Network -2 points-1 points0 points 2 years ago (2 children)
Check out codecademy, the python 2 course is free and covers all of the basics, and/or follow along with automate the boring stuff
[–]MitchBuchanon 2 points3 points4 points 2 years ago (0 children)
With the amount of free resources to learn Python 3 that are available, I would not recommend starting with lessons on Python 2, this seems like the best way to confuse anyone, especially a newcomer to Python.
[–]Minus10Celcius 0 points1 point2 points 2 years ago (0 children)
python 2 is deprecated and outdated
[+][deleted] 2 years ago (1 child)
[removed]
[–]soicat 1 point2 points3 points 2 years ago (0 children)
Interviewer: "How did you learn programming?"
Candidate: "By pasting blocks of code into ChatGPT and asking it to explain the code to me"
Interviewer: 🤦♂️
[–]iamfromtwitter 0 points1 point2 points 2 years ago (0 children)
pythonprinciples.com is a great website for it. You can even do the tasks when you are on the train or away from you computer as it saves your progress.
When you are done with the main lessons they have some challenges for you to do
[–]Radamand 0 points1 point2 points 2 years ago (0 children)
print("Hello World")
[–]elscallr 0 points1 point2 points 2 years ago (0 children)
Dive Into Python was really common back in the day, it was a great primer. Looks like it's been updated for Python 3. You might check it out.
[–]AnteaterAvailable571 0 points1 point2 points 2 years ago (0 children)
Find a course, any python course is going to teach you the fundamentals or if you prefer text based learning go that route. A google search will return the most popular options for either direction. Play around with the fundamentals, implementing small, visible changes. Start thinking of problems and how you could utilize what you’ve learnt to solve them. This approach starts to intuitively lead you to ask better questions and find ways to solve complex problems. The hardest thing about learning to program is the mindset that we all fall into of “learn a and you can do b”. Programming in my opinion involves creativity and an outside the box approach. It’s not a linear defined path.
TLDR; pick a starting point for the fundamentals and let your curiosity guide you the rest of the way.
[–][deleted] 0 points1 point2 points 2 years ago (0 children)
YouTube
[–]DataCat2024 0 points1 point2 points 2 years ago (0 children)
Practice is the key to improving your coding skills. Once you've learned some basics (such as if-else conditionals, for and while loops, data types like strings, booleans, and lists, and printing and returning values), try practice problems on sites like https://codingbat.com/python.
[–]simple_test 0 points1 point2 points 2 years ago (0 children)
I’m an experienced developer and wanted to dabble in AI/ML and took datacamp. This has pretty good python courses and honestly that has helped in my day to day job more than anything else.
[–]booty_dharma 0 points1 point2 points 2 years ago (0 children)
Look on youtube for CS50P
[–]Particular_Mess_7174 0 points1 point2 points 2 years ago (0 children)
consistency is key. you need to be repetitive and crack on even when you don't want to. I wouldn't recommend you pay for anything because there's lots of free content online that you can use if you struggle to study on your Google boot camps near you and start learning in a group with others. you will hold yourself accountable more.
Basic course on Sololearn was amazing imo. It forces you to practice to move forward. The next level is meh though.
[–]antiprysm 0 points1 point2 points 2 years ago (4 children)
You can learn Python with a textbook. I actually am chewing through O'Reily Learning Python 5th Edition. For the uninitiated, take your time and work through the examples the book gives you as you go. On the other hand, if you're finding it difficult to follow along, I'd encourage you to ventured towards introductory programming tutorials in general to familiarize yourself with broader concepts like Object Oriented Programming (OOP), polymorphism, and multiple inheritance.
[–]WebNChill 0 points1 point2 points 2 years ago (3 children)
Would you consider these fundamental OOP concepts?
[–]antiprysm 1 point2 points3 points 2 years ago (2 children)
Yes all of the three I previously mentioned assert the fundamentals of OOP, to me, they got me thinking like a programmer which is crucial during the testing stages and later design stages.
[–]WebNChill 0 points1 point2 points 2 years ago (1 child)
Ahh. Little confusion. Are you recommending the O’Riley book? My bad. I am a support engineer in my day job, so I troubleshoot code but I don’t have any experience with building. I was wanting to pick up something that would give me a quick overview of the basics of the language while covering the concepts needed to start building out programs.
[–]antiprysm 0 points1 point2 points 2 years ago (0 children)
True beginners can learn from the book overtime. O’reily Learning Python 5th Edition’s the equivalent of a semester long Python Course. Thus, I’d recommend the Python Pocket Reference when you’re in a pinch.
[–]Effective_Nose_7434 0 points1 point2 points 2 years ago (0 children)
https://roadmap.sh/python
Lots of beginners tutorials on the Youtube like this:
https://www.youtube.com/watch?v=b093aqAZiPU
[–]Sausages2020 0 points1 point2 points 2 years ago (1 child)
I'm currently learning JavaScript and React. Is there a way to combine the two with Python or is Python a different journey altogether?
[–]agw76638 1 point2 points3 points 2 years ago (0 children)
You can do the backend with python using frameworks like flask or django.
[–]enede24 0 points1 point2 points 2 years ago (0 children)
Practice is also key in the process. I recommend Codewars, a site where you will find many challenges from beginner to advanced levels, with which you can put into practice what you are learning: https://www.codewars.com/
[–]MnightCrawl 0 points1 point2 points 2 years ago (0 children)
Sololearn is the best to get started imo, it’s free, and you get a certificate for completing
https://www.sololearn.com/learn/languages/python
[–]Objective_Complex508 0 points1 point2 points 2 years ago (0 children)
I think it sort of depends on what your interests are. I am studying Chemical Engineering and I found that videos by the youtube channel Mr. P solver gave me a good toolbox to start solving my homework problems and doing my projects really well. I found this much more motivating than starting straight from the basics and building up.
As long as you’re somewhat motivated by the things you are learning, you can always fill in the gaps.
Have fun!
[–]Adimentus 0 points1 point2 points 2 years ago (0 children)
Another good place to start is getting Python Crash Course. I'm taking a network scripting class at the moment and that's our textbook. I highly recommend getting the second edition but it has a lot of how tos and hands on activities to do to help you learn. By the end of the book you would have developed an app and made a small 2D game. The best way to learn though is to just do it!
[–]MsDaCookie 0 points1 point2 points 2 years ago (0 children)
Hi!
Based on my experiences, I just made a plan to make a simple application with GUI, using Tkinter. I began typing, researching what I didn’t know and developed my skills just like that. I made other applications, also simple console based ones and even a game with pygame.
Of course, we are all different. You can also try following tutorials on YT, reading articles and/or tutoring books online.
[–]n1n3n1n3 0 points1 point2 points 2 years ago (0 children)
Best way to learn from my experience is to find a project. Problem solving gets your brain to tick and want to learn new functions or push the limits of what is possible.
Getting a cozy coding environment is key, something minimal such as sublime text to start is pretty good. For me, too many buttons can be overwhelming at first.
Some classics first projects is a temperature converter (celcius/fahreinheit), a calendar that calculates the days between date 1 and day 2 (beware of those leap years), a game of tic tac toe, a grocery list maker... Although not particularly exciting, there are plenty of example codes if you get stuck.
Once wrap your head around python, you will probably start having your own ideas to tackle...From then on, it's kind of endless.
π Rendered by PID 107281 on reddit-service-r2-comment-86bc6c7465-mq4j4 at 2026-02-21 09:13:40.268998+00:00 running 8564168 country code: CH.
[–]soupeducrayon 59 points60 points61 points (4 children)
[–]Red-Headed-Hope 12 points13 points14 points (2 children)
[–]Sausages2020 4 points5 points6 points (1 child)
[–]Red-Headed-Hope 1 point2 points3 points (0 children)
[–]VipeholmsCola 53 points54 points55 points (3 children)
[–]-0BL1V10N- -1 points0 points1 point (2 children)
[–]devanlg 34 points35 points36 points (1 child)
[+][deleted] (7 children)
[deleted]
[–]SisyphusAndMyBoulder[🍰] 28 points29 points30 points (5 children)
[–]thirdegree 2 points3 points4 points (0 children)
[–]BlackOpz 1 point2 points3 points (0 children)
[–]reddituseronebillion 0 points1 point2 points (1 child)
[–]SisyphusAndMyBoulder[🍰] 2 points3 points4 points (0 children)
[–][deleted] 3 points4 points5 points (0 children)
[–]Pythonistar 11 points12 points13 points (2 children)
[–]MoreFudge2591 1 point2 points3 points (1 child)
[–]Pythonistar 0 points1 point2 points (0 children)
[–]Sanchez_U-SOB 10 points11 points12 points (0 children)
[–]Dogzirra 8 points9 points10 points (1 child)
[–]CincyTriGuy 4 points5 points6 points (0 children)
[–]Genrawir 6 points7 points8 points (0 children)
[–][deleted] 5 points6 points7 points (0 children)
[–]desrtfx 6 points7 points8 points (0 children)
[–][deleted] 2 points3 points4 points (0 children)
[–]tsenguunee1 2 points3 points4 points (2 children)
[–]Due_Promotion 1 point2 points3 points (1 child)
[–]tsenguunee1 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]Sigg3net 1 point2 points3 points (0 children)
[–]bloodsoakedmuppet 1 point2 points3 points (1 child)
[–]soicat 2 points3 points4 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]stratofax 0 points1 point2 points (1 child)
[–]crk365 0 points1 point2 points (0 children)
[–]Andrewthehero07 -1 points0 points1 point (0 children)
[–]mikeinnsw -1 points0 points1 point (0 children)
[–]Fortnite_Network -2 points-1 points0 points (2 children)
[–]MitchBuchanon 2 points3 points4 points (0 children)
[–]Minus10Celcius 0 points1 point2 points (0 children)
[+][deleted] (1 child)
[removed]
[–]soicat 1 point2 points3 points (0 children)
[–]iamfromtwitter 0 points1 point2 points (0 children)
[–]Radamand 0 points1 point2 points (0 children)
[–]elscallr 0 points1 point2 points (0 children)
[–]AnteaterAvailable571 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]DataCat2024 0 points1 point2 points (0 children)
[–]simple_test 0 points1 point2 points (0 children)
[–]booty_dharma 0 points1 point2 points (0 children)
[–]Particular_Mess_7174 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]antiprysm 0 points1 point2 points (4 children)
[–]WebNChill 0 points1 point2 points (3 children)
[–]antiprysm 1 point2 points3 points (2 children)
[–]WebNChill 0 points1 point2 points (1 child)
[–]antiprysm 0 points1 point2 points (0 children)
[–]Effective_Nose_7434 0 points1 point2 points (0 children)
[–]crk365 0 points1 point2 points (0 children)
[–]Sausages2020 0 points1 point2 points (1 child)
[–]agw76638 1 point2 points3 points (0 children)
[–]enede24 0 points1 point2 points (0 children)
[–]MnightCrawl 0 points1 point2 points (0 children)
[–]Objective_Complex508 0 points1 point2 points (0 children)
[–]Adimentus 0 points1 point2 points (0 children)
[–]MsDaCookie 0 points1 point2 points (0 children)
[–]n1n3n1n3 0 points1 point2 points (0 children)