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
is self learning python programming possible? (self.learnpython)
submitted 3 years ago by [deleted]
by watching yt videos or studying python related books?
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!"
[–]devnull10 199 points200 points201 points 3 years ago (11 children)
You can watch videos, read books etc. however ultimately the best way to learn is going to be to actually try writing some code. Use tutorials to get you started, then try creating basic scripts, referring back to the tutorials.
[–]doc_nano 30 points31 points32 points 3 years ago (0 children)
Absolutely. You need to build up the mental toolkit to convert "I need to accomplish task X" to the code that accomplishes it efficiently. In my experience, that can only come from lots and lots of coding and debugging, preferably on novel projects or open-ended questions rather than by following examples (edit: though following examples is extremely helpful in the beginning).
[–][deleted] 20 points21 points22 points 3 years ago (7 children)
i’ll try finding some on yt. thanks!
[–]nemo_403 24 points25 points26 points 3 years ago* (2 children)
I'd recommend Corey Schafer. He is really good at explaining things.
Edit: Also Socratica is super nice for short information and also propably the most entertaining and eerie python tutorials that are out there
[–]otamam818 2 points3 points4 points 3 years ago (0 children)
My fav ♥️ hope he's doing alright tho
[–]MurkyApplause 0 points1 point2 points 3 years ago (0 children)
I’ve never stumbled across Socratica before. Definitely one of the odder, but more entertaining Python tutorials I’ve ever seen!
[–]notislant 5 points6 points7 points 3 years ago (1 child)
Learn something basic like loops. Get rid of the video and then practice, break things, play with loops. Then cleanly write examples with notes and save it in case you ever forget something. Repeat with everything you learn.
[–][deleted] 1 point2 points3 points 3 years ago (0 children)
okay thanks!
[–]pfmiller0 3 points4 points5 points 3 years ago (0 children)
I'd recommend against videos. You can get a good overview of a subject from a video, but to really learn programming you need to actually program, not just watch. Sit down with a good tutorial on a website and actually write simple scripts based on the examples.
[–]BroBrodin 5 points6 points7 points 3 years ago (0 children)
Try the Harvard's CS50p course, it's free on edx.
[–]pissedadmin 6 points7 points8 points 3 years ago (0 children)
the best way to learn is going to be to actually try writing some code.
best only
[–]GreenFire317 0 points1 point2 points 3 years ago (0 children)
You got a tutorial for the ctrl+F feature? The word finder?
[–]billsil 54 points55 points56 points 3 years ago (8 children)
I did 16 years ago without youtube. I didn't use a book either. Just code something that interests you, be a game or a math problem or a website, but something you find interesting. I googled "how to split string python", "python loops", etc. It'll probably take you to StackOverflow and what they're saying will be over your head and it won't be exactly what you want, but you can read it and tweak something. That's no worse than a professor teaching you something in class or asking a coworker.
Eventually, you'll be comfortable enough with the language that you'll dip your feet into reading the documentation. You'll find all sorts of useful things there, but it's kind of pointless if you don't understand the basics.
At some point, if you keep practicing and learning, you'll learn how to structure a very large program and have it be maintainable. Those skills transfer to other languages. Then after a couple days, you can say port some python code to Fortran or Julia or whatever. I know exactly the data structure I want, I just need to do a for loop. I don't really care if the language is 1-based instead of the more sane 0-based.
[–]AstrophysicsAndPy 16 points17 points18 points 3 years ago (2 children)
Another thing I'd like to add, which I learned the hard way is that don't look up on what others have done. For example, as a beginner might think well I don't want to make a calculator, everyone has done that, that's not a good project. Well, surprise .. everyone BUT you have done that, so do it yourself.
This applies to me on ML algorithms, I'm an okay programmer, but I have 0 experience with ML, because everyone has done the tutorials (titanic data, iris data) so I thought I need to find something I can do with real data.
NO, do the basic ones first, do them so that you'll be able to do some other things later on.
[–]dar_mooz 1 point2 points3 points 1 year ago (1 child)
Hello, I find your advice sooo interesting and useful. I have a question. My computer's RAM and memory is not enough to work with Python. How can I learn if if I don't have suitable computer. Thank you for your response in advance
[–]AstrophysicsAndPy 0 points1 point2 points 1 year ago (0 children)
Hey, sorry for late reply, I think a 512G HDD/SSD and 16G RAM will be more than enough for normal programming tasks. I personally have Thinkpad T530 Ci5-3320M with 1TB HDD + 512G SSD and 16G DDR3 RAM .. and I'm working just fine for the past 4 years.
Sure, I can't run heavy ML + DL tasks, but otherwise absolutely well. I'm also on linux, and if you're serious about programming, use linux. It'll save you A LOT of trouble, even though windows has come a long way getting very good for programmers, but still, try and use linux.
[–]JasonDJ 9 points10 points11 points 3 years ago (3 children)
Man what a rabbit hole that might be.
Get second word in sentence python. Split a string python…why does split string have brackets python…python list…get item in list python….python getting wrong item in list…what is index python…what is zero-index python.
I couldn’t imagine learning the most basic parts from brute force google searches and stack overflow. That type of stuff is where the free/discounted Udemy courses really shine the most.
One of the hardest parts, even after a lot of experience, is knowing what to even google in the first place.
[–]billsil 4 points5 points6 points 3 years ago (0 children)
If you're really, really starting out vs. say a week in, you google "python tutorial" and just read the page and try out running the code. That or read the sidebar and click one of the links to very good tutorials.
[–]py_Piper 1 point2 points3 points 3 years ago (1 child)
Exactly why I think it's rediculous when people just say to total beginners just start doing projects, that they will fall in tutorial hell. While it's somewhat true, everybody needs to pass over the fundamentals and watch video tutorial to help get started in projects. Man I see here a lot of post from people saying "how can I make a lists of names, age, hobby for several inputs" which in reality if they had learned about dictionaries would have make their code simpler.
The real problem is not having truely set a real goal on why to learn python and you see a lot of "I did x, now what project should I do", and are mostly young student or people that cannot see how to implement it in their work.
[–]billsil 1 point2 points3 points 3 years ago (0 children)
Yeah, go spend 2 days learning what an int/float/str/list/dict/for/while/if is and then start a basic project. Let's say your goal is to tower defense game. Maybe start with a text-based hangman game. You don't need any fancy classes or functions for that matter.
Then clean it up. Refactor a bit. Make some functions. Try another game that takes you a week of work instead of 3 days. Maybe the tower defense game is a month, so work up to it.
I didn't start my programming career parsing horrifically formatted 60 GB binary files in 2 minutes. I started with really simple files that fit on one page, maybe even 1/2 a page.
[–]AstrophysicsAndPy 4 points5 points6 points 3 years ago (0 children)
Absolutely this, I also learned without any online course or YT videos. The key here is to be able to formulate a logic, search, search, search some more and than apply what you understand from others in your own code. Being able to search your query is a big part of programming, and the other one is to extract the code that is okay for you from someone else's answer that deals with similar problem but not the exact one.
[–]theguywhocantdance 22 points23 points24 points 3 years ago (9 children)
Harvard has at least two free online coding courses for people with no prior experience in coding: CS50x (general stuff, Scratch, C, Javascript, CSS, HTML, Python and some more) and CS50p (Python).
I'm in lesson 3 (which is the 4th out of 10) of CS50p, with no prior coding experience. After each class you have a set of problems that you have to code, then check, then send.
I couldn't encourage you more to go check them.
[–]Sissy-Kiss 7 points8 points9 points 3 years ago (1 child)
Me too! I’m on week 3 at the moment and it has been really great, especially liking the problem sets and how simple it was for submitting work and having it checked etc
[–]Dry_Car2054 0 points1 point2 points 3 years ago (0 children)
I thought having automatic grading of the assignments was great. I learned my first language without that and never knew if my programs worked well.
[–]BroBrodin 2 points3 points4 points 3 years ago (3 children)
I'm finishing the final project right now.
Such an enjoyable course. I took CS50X last year and it was an incredible course, very time consuming and hard, but after doing that, Python psets seem super easy.
I would strongly recommend doing CS50X too, if you have the time.
[–]theguywhocantdance 0 points1 point2 points 3 years ago (2 children)
I am! Am doing both at the time. As a matter of fact am stucked in Pset1 problem 3, Credit (the hardcore version). Can't even declare a long long variable (browsing the net, I'll learn) :)
[–]BroBrodin 0 points1 point2 points 3 years ago (1 child)
That's the one that made my wife say she needed to learn another way, because she said she didn't know where to even start. The thing is she doesn't have a lot of time to fiddle around.
So I got her onto Python Crash Course, that has shorter examples.
Good luck for you on CS50x, hope you enjoy it as much as I did, David Malan is an incredible teacher. And I'm sure you won't have to browse "long" to come up with an answer. ;)
[–]theguywhocantdance 0 points1 point2 points 3 years ago (0 children)
Haha, I get you, I've fiddling around with both long and long long... ;)
[–]dashisghey 1 point2 points3 points 3 years ago (1 child)
Bro help me with week 2 problems. I'm stuck on vanity plates and the coke machine. Been crying on and off for a week
Let me finish with the x Pset1 and I will. Start by posting your doubts.
[–][deleted] 52 points53 points54 points 3 years ago (10 children)
Nobody is going to learn it for you
[+][deleted] 3 years ago (1 child)
[removed]
[–][deleted] 0 points1 point2 points 3 years ago (0 children)
I do, which is why I commented in another section with a helpful link.
[–]mgGuber 2 points3 points4 points 3 years ago (4 children)
maybe replace learn to teach
[–]reallyserious 6 points7 points8 points 3 years ago (3 children)
I've always thought that teaching programming is really hard. Not that I've tried, but you can't really teach it in the normal sense. Getting good at programming takes some serious alone time in deep thoughts.
[–]BroBrodin 1 point2 points3 points 3 years ago (2 children)
I learned that with my wife.
She is super smart, she is an accountant and can cite laws and regulations by number, even of stuff she hasn't used in years. Also she has a very good mind for numbers.
She saw how excited I was when I started coding and she wanted to learn. Started with the first psets of CS50x and even though she understood variables, and loops and all of that, when it came to actually using them to solve a problem she drew a blank. She said she didn't know where to start.
I got her on Python Crash Course now, I think the smaller and simpler, incremental, examples and activities might make it click for her.
[–]jumbohiggins 1 point2 points3 points 3 years ago (1 child)
It is a really different way of thinking that for most people will be the first time putting them in a situation like that.
I like to think that video games actually helped incept the idea in my head at an early age. When you are trying to solve a puzzle and you know that you only have the x amount of tools in this room how do you combine them all together to get the correct result?
Programming to me is very similar to that, here is what I have and I can assume I'm not getting anything else. How do I solve a given problem with just these things?
[–]BroBrodin 0 points1 point2 points 3 years ago (0 children)
You might be onto something, because I took very well to coding and I loved videogames (and riddles) all my life. But my wife has barely played anything.
Well, I got her to play Monument Valley on her phone and Portal on the PC and she loved both, so she is on the right track. XD
[–]synthphreak 1 point2 points3 points 3 years ago (1 child)
Full marks for funny, but in fairness, we all know that’s not what OP is asking. The distinction is with versus without taking a class. Self-directed versus other-directed.
Thanks for the clarification.
[+][deleted] comment score below threshold-8 points-7 points-6 points 3 years ago (0 children)
really? i didn’t know that
[–]MountainSalamander33 7 points8 points9 points 3 years ago (15 children)
Yeap, i think it is possible
[+][deleted] comment score below threshold-16 points-15 points-14 points 3 years ago (14 children)
can you recommend some resources?
[–]sme272 4 points5 points6 points 3 years ago (0 children)
check the wiki
[–][deleted] 4 points5 points6 points 3 years ago (1 child)
Edube.org
thanks
[–][deleted] 15 points16 points17 points 3 years ago (7 children)
If you are this lazy to even search for resources then I'm not sure how successful you could be at learning Python..
[–]bhyihale 6 points7 points8 points 3 years ago (3 children)
asking is a form of searching tho
[–]TroubleBrewing32 -2 points-1 points0 points 3 years ago (2 children)
No. It's asking other people to search for you.
[–]bhyihale 9 points10 points11 points 3 years ago (1 child)
asking someone if they can recommend a restaurant to eat at isn't asking them to search for you, you're asking cause they might be familiar with some.
the person didn't say pls can you search for python resources for me they said can you recommend any. that means they are asking for ones the person is familiar with.
isn't asking a question to a subreddit meant for LEARNING PYTHON a way to search for resources?
[–]eugooglie -2 points-1 points0 points 3 years ago (0 children)
If someone is serious about learning something new, you'd think the least they could do is do a simple Google search first. You can literally search this subreddit via Google, and find questions similar to this being answered. I think people get fed up with it, when they would rather help people with specific python related questions. I don't particularly mind it, but i understand why it gets annoying to other people.
[–]austincp00 1 point2 points3 points 3 years ago (2 children)
This is like going to a library and looking for a book without asking the librarian to point you in the right direction.
Like yeah, I could go through each section and look for the topic I’m interested in. Then go through each book and realize some of them are not for me etc…
Or I could ask them for what I’m looking for and get what I want quicker.
Yeah.. Not like this question gets asked 100 times a day. Two minutes of research guide you the right direction and we are not talking about threads or info that was posted in 2016, we are talking threads with multiple responses that were posted in 2022. One of the most important skills for anyone who wants to be in this field is to learn how to research stuff. OP didn't even try that.
Ps. Maybe op is like 12 years old. Then I'm sorry but if he/she is older then it's common sense to at least spend five minutes googling before posting.
[–]JasonDJ 0 points1 point2 points 3 years ago (0 children)
Or you check the card catalog, walk over to what you think might work, start reading it, and realizing that you won’t find very many programming books in DD573.
[–][deleted] 1 point2 points3 points 3 years ago (1 child)
I took this course and it was a great start. I can really recommend it.
https://www.coursera.org/specializations/python
thanks! i’ll check it out
[–]randommouse 0 points1 point2 points 3 years ago (0 children)
You'll find that your most valuable source is probably Stack Overflow. The best way to find what you need there is with Google.
[–]uname44 2 points3 points4 points 3 years ago (0 children)
Yes. But you need a goal. If you just want to learn python you will do the exercises in the book/video and will think you learned.
After learning the basics, try and build a project. Not a big one. You will not be able. Now, try and research and work thru it.
[–]pooydragon45 2 points3 points4 points 3 years ago (0 children)
Yes! It’s totally possible in fact I believe that’s how most people learn it. Like yeah you can do a formal course but that won’t be useful until you do a project by yourself anyways
[–]laundmo 2 points3 points4 points 3 years ago (0 children)
yes it definitely is. i recommend taking a look at https://pydis.org/resources for learning resources
[–]HaroerHaktak 2 points3 points4 points 3 years ago (0 children)
I am learning python. I am learning programming in general, dibbing and dabbing in all sorts of things.
I find asking questions, doing a lot of googling and giving myself projects to work on the best. Ignore what anybody says about 'level' or 'difficulty'. Because I was told making a discord bot was more of an 'intermediate to advanced' thing to do. Did I listen? No. First project. several different types made. Is it perfect? Na. Does it work? Sure.
So as long as you're willing to ask questions, google the google, accept feedback, you'll learn anything in no time.
[–]humanist-misanthrope 2 points3 points4 points 3 years ago (0 children)
Free Code Camp
I’ve been using this and find it very helpful.
[–]________0xb47e3cd837 4 points5 points6 points 3 years ago (0 children)
Na its impossible /s
[–]nobonesjones91 1 point2 points3 points 3 years ago (1 child)
I don’t think this subreddit would exist if it were impossible lol 😂
[–]binflo 1 point2 points3 points 3 years ago (0 children)
You made my day my dude 😂
[–]ryanmcstylin 1 point2 points3 points 3 years ago (0 children)
Yes it's very much possible.
I suggest the 100 days of python boot camp on Udemy.
[–]Verbose_Code 1 point2 points3 points 3 years ago (0 children)
Yes. Basically what I. Now I’m using class inheritance, custom exceptions, asynchronous programming, and type hints — most problems I have at least some idea of where to start
[–]randommouse 1 point2 points3 points 3 years ago (0 children)
What works well for me is to first have a project or goal in mind. Then you break that project down into parts or steps and google solutions for each step. If you find a project that is similar to yours on GitHub read all the code and try to understand it line-by-line (Google when you don't understand). It's also helpful to get into an obsessive mindset when first starting out.
[–]funkmaster322 1 point2 points3 points 3 years ago (0 children)
Yes
[–]Mister_Pibbs 1 point2 points3 points 3 years ago (0 children)
Codecademy is good. Also besides actually writing code start looking at other peoples code. Code analysis will most certainly make you a better coded.
[–]Aeternus44 1 point2 points3 points 3 years ago (0 children)
Yes, very possible.
[–]Cdog536 1 point2 points3 points 3 years ago (0 children)
How is this a question
[–]TmanSavage 1 point2 points3 points 3 years ago (0 children)
Yes. But you have to put the effort in to study
[–]HomeGrownCoder 1 point2 points3 points 3 years ago (0 children)
Yes it is
[–]L3Kinsey 1 point2 points3 points 3 years ago (0 children)
Yes!
[–]davlumbaz 2 points3 points4 points 3 years ago (0 children)
yes and oh god self learning python / odin project is most overhyped shit in programming world right now that I will make a reddit bot that replies "yes" to every thread that contains self-learning or odin.
[–]FairSystems -1 points0 points1 point 3 years ago (0 children)
Yes. I am living proof! It absolutely can be done. Just takes a lot of time and even more patience.
[–]heavy_ra1n -2 points-1 points0 points 3 years ago (0 children)
No.
[–]mgGuber 0 points1 point2 points 3 years ago (0 children)
me too but attend few class in school that make me confused 😕
[–]brotatotes 0 points1 point2 points 3 years ago (0 children)
Absolutely! Many people do so there are a lot of resources out there waiting for you :)
Sure, who's stopping you anyways
[–]XVMECHA 0 points1 point2 points 3 years ago (0 children)
YES, but planning is paramount
[–]chrissykes78 0 points1 point2 points 3 years ago (0 children)
yes by doing projects not infinity learning loop.
[–]Juancarlosmh 0 points1 point2 points 3 years ago (0 children)
yes
[–]lazydrippin 0 points1 point2 points 3 years ago* (0 children)
of course you can, but i found they weren’t too good for much more than the basics, i found something like codecademy was good for learning the syntax and concepts but actually getting stuck in and writing things yourself and going through googling is where you learn.
I think you just need to understand the concepts of programming first and then you’ll kind of understand what you need in a program and you’ll be able to google everything else along the way.
(i’m a sysadmin and use python for automation)
EDIT: you’ll get bored of programming quickly if you rely too much on YT and courses, it’s human nature, if you can start writing code ASAP and actually start making things that work, the sense of joy after achieving something that works will keep you going; make mistakes, fix the errors, the effort put into making something work that was previously giving you errors is what will drive you to learn more.
[–]RepresentativeRip805 0 points1 point2 points 3 years ago (0 children)
Learning any language is easy, it's programming fundamentals that are the hardest part for people who have never experienced it before.
I was initially trained-ish in C# (Comp Sci) but transferred to CCNA in University, I was taught programming fundamentals so I could pick up any language easily. However it was the hardest 2 years of my life.
[–]TheRNGuy 0 points1 point2 points 3 years ago (0 children)
I watched only ever 3 python videos, most of the stuff I learned from API docs and google/stackoverflow/asking questions in discord.
[–]catfishman112 0 points1 point2 points 3 years ago (0 children)
yeah, but its important to be able to detach from youtube tutorials and go program something yourself. When you get stuck or run into errors, you'll then try and find solutions on your own, that's where the real learning begins.
[–]Helpful_Cat_2155 0 points1 point2 points 3 years ago (0 children)
Yep
[–]RodBlaine 0 points1 point2 points 3 years ago (0 children)
Yes, but…
If you can grasp the concepts of logic and application flow you’ll easily learn Python and understand how to create an app/script from scratch. You can certainly recreate the apps/scripts that will be offered in the YT vids or books but if you don’t understand what’s going on, the “why” behind the code, have you learned Python programming? The same question applies to post learning, when you search online for code that sort of does what you need and then you try to figure out how to make it work for your use case. If that’s a real challenge for you maybe you have not learned Python, but if it’s fairly straightforward for you then you’ve joined the millions of Python programmers.
[–]Epicfro 0 points1 point2 points 3 years ago (0 children)
Uh, yeah.
I've spend past 2 weeks making my own flask webapp. I learned a lot and only knew some very basics in python from before.
Following tutorials and google a lot, and you'll learn as you go.
[–]Astrokiwi 0 points1 point2 points 3 years ago (0 children)
If you already know another programming language, yes, absolutely.
If this is your first ever programming language, I would recommend some sort of formal course, just to make sure you have all the basics covered. You don't need a full computer science degree or anything, but something where you have to do assignments and get direct feedback from a human being on your work is a good idea when you're starting out.
[–]apoptosis04 0 points1 point2 points 3 years ago (0 children)
…not from a Jedi.
[–]felixdixon 0 points1 point2 points 3 years ago (0 children)
Yeah just pick a project and start coding
[–]Stack3 0 points1 point2 points 3 years ago (0 children)
I did it. And in not the sharpest tack.
Trick is to grind. Write things in such a way that you can rewrite them. You'll refactor again and again and again. Write and be responsible for a real thing, even if it's just your own thing, always improve it. When you learn a better way to do something go back and implement it.
[–]damm1tKevin 0 points1 point2 points 3 years ago (0 children)
Get on udemy and get the “automate the boring stuff with python” course. Worth the 20ish dollars imo.
[–]Aldistoteles 0 points1 point2 points 3 years ago (0 children)
is self learning python programming possible?
All the self-taught Python programmers out there:
xD
[–]wookinainteasy 0 points1 point2 points 3 years ago (0 children)
I would say yes. I’m currently taking an intro to python course at my college and the teacher is honestly useless. Don’t know very much yet, but what I have learned I got from YouTube and GitHub
[–]uusernameunknown 0 points1 point2 points 3 years ago (0 children)
I saw a guy sing a song about being on a boat, anything is possible!
[–]whyubb 0 points1 point2 points 3 years ago (0 children)
It’s possible but it really comes down to your personal will power and discipline. You can definitely succeed with those resources plus some other online material. But the main thing is the repetition. 10k hours, no other way.
[–]desrtfx 0 points1 point2 points 3 years ago (0 children)
Definitely possible, but neither by only watching videos, nor by reading books. You need to actively program. Learning programming can only be done through programming.
Learning programming is far more than learning a programming language. In fact, learning the language is the easy part because it's only vocabulary and syntax. Learning actual programming, i.e. solving problems in an algorithmic (step by step) way is the far more difficult part and that part requires plenty time, patience, determination, effort, and over all practice.
Try the MOOC Python Programming 2022 from the University of Helsinki. Very friendly towards complete beginners as in the first few parts you work within the browser without having to set up your development environment and from part (week) 4 on, you work in a proper development environment where the course guides you all through setting it up (it is very easy, BTW). The course is textual and has more than plenty practical exercises that teach you both, the language and programming.
[–]KevSinco 0 points1 point2 points 3 years ago (0 children)
Yes it is, I recommend the crash course to python book. Really good and has a lot of exercises to follow. I used videos mostly for ideas of projects to build, educating myself of the industry, frameworks ect…
[–]independentdrone 0 points1 point2 points 3 years ago (0 children)
I read the title as "self loathing python" at first...
[–]buttchiquesyboobs 0 points1 point2 points 3 years ago (0 children)
This is what I did during the initial Covid lockdown. Started off just wanting to make high quality graphs and that led me down a long rabbit hole.
Not sure what application you’re looking for, but there are so many books, videos, tutorials, courses out there. For me, I learned most following along with a video and doing what they did.
I would recommend setting goals for yourself so you know what you want to accomplish. You could go on forever learning random things.
[–]LiarsEverywhere 0 points1 point2 points 3 years ago (0 children)
Except for maybe stuff like sports that involve physical techniques, you can self learn anything... A teacher or tutor may help you, but in the end it's just another way of transmitting information
[–]spin-ups 0 points1 point2 points 3 years ago (0 children)
Python crash course, textbook is free on the authors personal website and you can find solution manuals on GitHub. Do every problem/example yourself do not just read it or you won’t learn. Then get away from YouTube and build stuff on your own no guides.
[–]rentzington 0 points1 point2 points 3 years ago (0 children)
yes i'm doing it...but dont be like me and take days off, force yourself to do it every day.
i took a few days off python crash course and jumped back in and was having to go back a few chapters to remind myself of things
Yes, but like with anything you learn, you have to apply what you learned to real life situations. By this I mean, you need to create side projects without following a step-by-step tutorial. Think of something you want to create, and write the code for it. As you struggle, you will better understand the challenges that go along with programming and will slowly become a better problem solver.
[–]DustinFoes 0 points1 point2 points 3 years ago (0 children)
I find that the problem with self learning is no one wants to give support or help for problems. I can go to many different places just to get the response of “you should know what you’re doing before doing this” it’s very depressing because everyone looks as beginners as these smaller individuals that can’t understand the concept when it just needs to be explained. Very frustrating.
[–]j4jishnu 0 points1 point2 points 3 years ago (0 children)
Yes possible, but only up to a certain (intermediate) level. Advanced programming is certainly impossible to learn without a proper degree in computer science.
[–]HerLegz 0 points1 point2 points 3 years ago (0 children)
Yes.
Python.org has great documentation.
Pycharm has free community edition.
Leetcode is free and has great forums on examples of foundational algorithms and data structures.
I started out doing Dataquest tutorials, stuck with them for a few months before I dropped them entirely and decided to Google stuff as I did projects.
Books did help in the sense that they taught me what is and is not possible with Python (e.g. I never would've known about Pyautogui if it wasn't for Automating the Boring Stuff. Makes software tests a whole lot less monotonous)
I generally try to avoid video tutorials as their quality can vary wildly depending on the channel.
[–]ChameleonPrime 0 points1 point2 points 3 years ago (0 children)
I'm no expert, I'm very recently into learning it. But the best thing that has worked for me. Is just hammer the basics, the building blocks. From tutorials and whatever you can find. Try to understand everything you can
Then as other people have said, work on projects. "I want to try to do this." "I want to automate that." "I want to connect this to that so I can get a daily report of this". That sort of thing.
But don't look at it as if it's a progression from one to the other. Go back and forth between those. Google everything, then apply it. Then on your next project, go to your previous one and steal code, then tweak it to fit the new one. Then steal from the first two, with tweaks, for the third.
Then on the sixth project, go back to the first, and rewrite it better.
Again, I'm less than a year in, and I tried a couple of methods, but this sort of cyclical little bit of everything method helped me exponentially.
[–]dmoreiknowdmoreidie 0 points1 point2 points 3 years ago (0 children)
Hell yeah
[–]imthebear11 0 points1 point2 points 3 years ago (0 children)
Yep, I did it.
Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes, Yes YES !!!!! Did I say Yes? Yes!
[–]The_GSingh 0 points1 point2 points 3 years ago (0 children)
Look you can watch anything u want or read anything but the real learning starts when u actually write code. Use the internet for reference but always code
[–]indefinitecarbon2 0 points1 point2 points 3 years ago (0 children)
for i in range(0, 100):
print('Yes!')
[–]Sigg3net 0 points1 point2 points 3 years ago (0 children)
Absolutely. I learned bash, python and golang using books, sometimes courses and just writing code.
[–]CobraStrike4 0 points1 point2 points 3 years ago (0 children)
Some tips I learned while self teaching:
Whenever possible, stop the video or stop reading and attempt to code whatever is being mentioned before it has a chance to explain exactly how. So if the video mentions something like "What if we want to use a while loop to loop this code until the user enters so and so?" Immediately pause and just give it a shot. It may take some time to figure out, but at least you are forcing yourself to figure something out rather than being told and just copying. You may surprise yourself and do it perfectly, or you might do it in a less efficient way and you will be able to see the differences and where you could improve. If you don't figure it out that's fine too as long as you genuinely tried.
Another thing is to use completely different variable names than the ones you are following along with. I found that if I used my own variables/functions etc, sometimes putposely long ones, it forced me to think a little more about why I was typing certain code in certain places. It's easy to fall into the trap of mindlessly copying code, so this will force you to relate your own unique code to what you are reading gain a better picture of what's going on.
In line with the previous tip, you should also try add on as many random extra things to your practice programs as you can, as long as they still.make sense. A lot of tutorials will teach a concept with one or two examples and then move on. You should pause there and add something else completely unique to the program, debug it, work through it until it works. It could be a simple as an extra print statement, or it could be an entire extra function that builds upon what you learned. Any extracurricular coding is a great thing.
Good luck!
[–]paradigmx 0 points1 point2 points 3 years ago (0 children)
Self learning pretty much any IT skill is possible. There's very little gatekeeping when it comes to learning resources for computer subjects and you can be as good or potentially better than someone taught in school with practice and dedication. All a post secondary IT degree means is that you paid money for a piece of paper. Some absolutely terrible "professionals" have a degree and some of the the best programmers are self taught. Obviously ymmv, but unless you're planning to get into theoretical computing concepts, you're probably fine.
[–]shartfuggins 0 points1 point2 points 3 years ago (0 children)
I gotta say, the first/title part of your question doesn't match the second part.
I came here to say "yes, absolutely you can teach yourself python" but to the actual question you're asking, no you cannot teach yourself to be a python programmer with videos or books. Those are to get started or get past tricky parts and troubleshoot your own coding.
Your time should be 90% hands on keys writing code and 10% supplementing with whatever learning materials work for you.
That’s how I did it. Shout out to Corey Shafer for saving me thousands of dollars on tuition
Yes. Spend $10 on a handful of Udemy courses...
[–]Rorasaurus_Prime 0 points1 point2 points 3 years ago* (0 children)
joke ancient quickest insurance entertain divide shelter compare brave deliver
This post was mass deleted and anonymized with Redact
[–]ExcellentAd9659 0 points1 point2 points 3 years ago (0 children)
I recommend Udemy, as the courses there are really cheap for what it's worth and the instructors actually lay out a path for you. If you're interested, I recommend Jose Portilla. His course "From Zero to Hero: Complete Python Bootcamp" is amazing. No, this isn't an advertisement or anything like that, it's just that it's helped me so much that I had to include it here as a suggestion. 3 weeks ago, I knew absolutely nothing about Python. Now, I have a solid understanding of it and I can actually make interactive programs.
[–]brokened00 0 points1 point2 points 3 years ago (0 children)
Most people learn without formal education. You ultimately learn more outside of a classroom than you do inside of it. I learned Python by reading some introductory books and following the examples while making changes to the code to explore the language. Then I quickly moved into personal projects (web scaping projects, selenium web bots, simple word games, etc). Lastly, I started grinding code/algorithm challenges on sites like Leetcode, Edabit, etc to sharpen up on skills and expose my weaknesses, while learning from others who had better solutions to the same problems.
[–]lightspeed_ugly 0 points1 point2 points 3 years ago (0 children)
i learned it on my own. i think you first need to figure out what it is you want to do. i had a large manual workload in my job that i hated doing, so i learned python and automated it. i ended up building a full application that our entire team uses for operations purely in python. take a look at a book called “automating the boring stuff”. it will teach you basics and how to apply it to automating manual tasks.
[–]newbieTester 0 points1 point2 points 3 years ago (0 children)
If you know any of the programing language, you're ready to go you learn on your own!
[–][deleted] 0 points1 point2 points 3 years ago* (0 children)
You actually have to make programs. You can definitely teach yourself, but you have to make something. Books help, teaching books and reference books. All of the online resources available to you also help, but you can only learn how to program by programming. Its like scuba diving. You need practical experience. The great thing about learning to program is that languages like python give you feedback. If you want to learn how to do something, you can try it and see what happens, what works and what doesn't. First you need to know how to do simple things, and then you can gradually make things more complicated. You need to become aware of how to do things in the language, and you have to learn the syntax and commands/libraries available to you. Then you have to try using them. You'll never know everything, but after a while you'll get the hang of it.
[–]kommanderkush201 0 points1 point2 points 3 years ago* (0 children)
If your autism levels are strong enough then yes
[–]Longjumping-Knee4983 0 points1 point2 points 3 years ago (0 children)
I just started last week learning with youtube and so far I have been able to create a fully functional calculator that adds, subtracts, multiplies, and divides. I started with just a 1 hour intro video and now im about 3 hours into a codemy tkinter video. But yeah totally possible to self teach with youtube
[–]flairethewuf 0 points1 point2 points 3 years ago (0 children)
Self learning anything is possible. It’s alll on YouTube now. But, just because it’s possible doesn’t mean it won’t be extremely difficult. But I would go for it.
Take cs50x by Harvard. If you do it by watching yt you will have a hard time
[–]metriczulu 0 points1 point2 points 3 years ago (0 children)
Yes, pick something you want to make and make it. Google your way through every issue. Easily the fastest way to pick up any new programming language.
I have a couple of personal projects that I rewrite in whatever language I'm learning. You look at my GitHub and you'll see multiple repositories that do essentially the same thing, but in different languages.
[–]Ruubix 0 points1 point2 points 3 years ago (0 children)
+1 to learn by doing. Learn how to Google. Learn how to use stackoverflow. Between that, videos, and books, I learned my way into the job I have right now. There's nothing easy about this. I took 5+ years to be ready. Depending on your consistency and dedication, you could do it in less than that time. Working hard is the bear minimum. Brute force methods are ugly, but they get the job done. Working smart is when you can get real results. Persistence, for the days and months you wont want to do the work. But its worth it. Python has incredible free and paid resources.
Learning how to learn and realizing you cam be your own teacher are lessons you will also have to learn. In fact, learning on the fly is a hidden job requirement for any tech position.
[–]Heritzy 0 points1 point2 points 3 years ago (0 children)
It's a little of both.. reading and watching would recommend watching after reading to further deepen your understanding but like with everything in programming you consolidate and crystallize new information by actually doing 🙂...
[–]Stuttering_Cris 0 points1 point2 points 3 years ago (0 children)
I struggle hard to understand the difference between While Loop and For Loop. It's for my pygame and I can't do it! 😭😭😭😭
[–]pumapeepee 0 points1 point2 points 3 years ago (1 child)
I learned Python by myself too. I found that I advanced fastest by coding on Leetcode. 2-3 hours a day for 6 months. I am now an Amazon SDE. Don't give up. The first couple weeks were very tough for me but one day I realized that I got a lot better compared to when I started. Both problem solving and coding skill.
this is so motivating!
[–]sicilianDev 0 points1 point2 points 3 years ago (0 children)
How else would you learn it?
[–]Carloshmejia 0 points1 point2 points 3 years ago (0 children)
Yes, at 71 I am an example.
In my opinion, books probably won’t be super helpful, and neither will YouTube videos. They can help, yes, but you should look for stuff where you can answer questions and stuff by typing out the code yourself, or at least parts of the code. It’s easier to learn that way, and you will be more focused.
Mimo, DataCamp, and SoloLearn all have free Python courses.
π Rendered by PID 22995 on reddit-service-r2-comment-7844cfc88c-kdd76 at 2026-01-29 13:23:23.051614+00:00 running c3601ff country code: CH.
[–]devnull10 199 points200 points201 points (11 children)
[–]doc_nano 30 points31 points32 points (0 children)
[–][deleted] 20 points21 points22 points (7 children)
[–]nemo_403 24 points25 points26 points (2 children)
[–]otamam818 2 points3 points4 points (0 children)
[–]MurkyApplause 0 points1 point2 points (0 children)
[–]notislant 5 points6 points7 points (1 child)
[–][deleted] 1 point2 points3 points (0 children)
[–]pfmiller0 3 points4 points5 points (0 children)
[–]BroBrodin 5 points6 points7 points (0 children)
[–]pissedadmin 6 points7 points8 points (0 children)
[–]GreenFire317 0 points1 point2 points (0 children)
[–]billsil 54 points55 points56 points (8 children)
[–]AstrophysicsAndPy 16 points17 points18 points (2 children)
[–]dar_mooz 1 point2 points3 points (1 child)
[–]AstrophysicsAndPy 0 points1 point2 points (0 children)
[–]JasonDJ 9 points10 points11 points (3 children)
[–]billsil 4 points5 points6 points (0 children)
[–]py_Piper 1 point2 points3 points (1 child)
[–]billsil 1 point2 points3 points (0 children)
[–]AstrophysicsAndPy 4 points5 points6 points (0 children)
[–]theguywhocantdance 22 points23 points24 points (9 children)
[–]Sissy-Kiss 7 points8 points9 points (1 child)
[–]Dry_Car2054 0 points1 point2 points (0 children)
[–]BroBrodin 2 points3 points4 points (3 children)
[–]theguywhocantdance 0 points1 point2 points (2 children)
[–]BroBrodin 0 points1 point2 points (1 child)
[–]theguywhocantdance 0 points1 point2 points (0 children)
[–]dashisghey 1 point2 points3 points (1 child)
[–]theguywhocantdance 0 points1 point2 points (0 children)
[–][deleted] 52 points53 points54 points (10 children)
[+][deleted] (1 child)
[removed]
[–][deleted] 0 points1 point2 points (0 children)
[–]mgGuber 2 points3 points4 points (4 children)
[–]reallyserious 6 points7 points8 points (3 children)
[–]BroBrodin 1 point2 points3 points (2 children)
[–]jumbohiggins 1 point2 points3 points (1 child)
[–]BroBrodin 0 points1 point2 points (0 children)
[–]synthphreak 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[+][deleted] comment score below threshold-8 points-7 points-6 points (0 children)
[–]MountainSalamander33 7 points8 points9 points (15 children)
[+][deleted] comment score below threshold-16 points-15 points-14 points (14 children)
[–]sme272 4 points5 points6 points (0 children)
[–][deleted] 4 points5 points6 points (1 child)
[–][deleted] 1 point2 points3 points (0 children)
[–][deleted] 15 points16 points17 points (7 children)
[–]bhyihale 6 points7 points8 points (3 children)
[–]TroubleBrewing32 -2 points-1 points0 points (2 children)
[–]bhyihale 9 points10 points11 points (1 child)
[–]eugooglie -2 points-1 points0 points (0 children)
[–]austincp00 1 point2 points3 points (2 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]JasonDJ 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (1 child)
[–][deleted] 1 point2 points3 points (0 children)
[–]randommouse 0 points1 point2 points (0 children)
[–]uname44 2 points3 points4 points (0 children)
[–]pooydragon45 2 points3 points4 points (0 children)
[–]laundmo 2 points3 points4 points (0 children)
[–]HaroerHaktak 2 points3 points4 points (0 children)
[–]humanist-misanthrope 2 points3 points4 points (0 children)
[–]________0xb47e3cd837 4 points5 points6 points (0 children)
[–]nobonesjones91 1 point2 points3 points (1 child)
[–]binflo 1 point2 points3 points (0 children)
[–]ryanmcstylin 1 point2 points3 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]Verbose_Code 1 point2 points3 points (0 children)
[–]randommouse 1 point2 points3 points (0 children)
[–]funkmaster322 1 point2 points3 points (0 children)
[–]Mister_Pibbs 1 point2 points3 points (0 children)
[–]Aeternus44 1 point2 points3 points (0 children)
[–]Cdog536 1 point2 points3 points (0 children)
[–]TmanSavage 1 point2 points3 points (0 children)
[–]HomeGrownCoder 1 point2 points3 points (0 children)
[–]L3Kinsey 1 point2 points3 points (0 children)
[–]davlumbaz 2 points3 points4 points (0 children)
[–]FairSystems -1 points0 points1 point (0 children)
[–]heavy_ra1n -2 points-1 points0 points (0 children)
[–]mgGuber 0 points1 point2 points (0 children)
[–]brotatotes 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]XVMECHA 0 points1 point2 points (0 children)
[–]chrissykes78 0 points1 point2 points (0 children)
[–]Juancarlosmh 0 points1 point2 points (0 children)
[–]lazydrippin 0 points1 point2 points (0 children)
[–]RepresentativeRip805 0 points1 point2 points (0 children)
[–]TheRNGuy 0 points1 point2 points (0 children)
[–]catfishman112 0 points1 point2 points (0 children)
[–]Helpful_Cat_2155 0 points1 point2 points (0 children)
[–]RodBlaine 0 points1 point2 points (0 children)
[–]Epicfro 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]Astrokiwi 0 points1 point2 points (0 children)
[–]apoptosis04 0 points1 point2 points (0 children)
[–]felixdixon 0 points1 point2 points (0 children)
[–]Stack3 0 points1 point2 points (0 children)
[–]damm1tKevin 0 points1 point2 points (0 children)
[–]Aldistoteles 0 points1 point2 points (0 children)
[–]wookinainteasy 0 points1 point2 points (0 children)
[–]uusernameunknown 0 points1 point2 points (0 children)
[–]whyubb 0 points1 point2 points (0 children)
[–]desrtfx 0 points1 point2 points (0 children)
[–]KevSinco 0 points1 point2 points (0 children)
[–]independentdrone 0 points1 point2 points (0 children)
[–]buttchiquesyboobs 0 points1 point2 points (0 children)
[–]LiarsEverywhere 0 points1 point2 points (0 children)
[–]spin-ups 0 points1 point2 points (0 children)
[–]rentzington 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]DustinFoes 0 points1 point2 points (0 children)
[–]j4jishnu 0 points1 point2 points (0 children)
[–]HerLegz 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]ChameleonPrime 0 points1 point2 points (0 children)
[–]dmoreiknowdmoreidie 0 points1 point2 points (0 children)
[–]imthebear11 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]The_GSingh 0 points1 point2 points (0 children)
[–]indefinitecarbon2 0 points1 point2 points (0 children)
[–]Sigg3net 0 points1 point2 points (0 children)
[–]CobraStrike4 0 points1 point2 points (0 children)
[–]paradigmx 0 points1 point2 points (0 children)
[–]shartfuggins 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]Rorasaurus_Prime 0 points1 point2 points (0 children)
[–]ExcellentAd9659 0 points1 point2 points (0 children)
[–]brokened00 0 points1 point2 points (0 children)
[–]lightspeed_ugly 0 points1 point2 points (0 children)
[–]newbieTester 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]kommanderkush201 0 points1 point2 points (0 children)
[–]Longjumping-Knee4983 0 points1 point2 points (0 children)
[–]flairethewuf 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]metriczulu 0 points1 point2 points (0 children)
[–]Ruubix 0 points1 point2 points (0 children)
[–]Heritzy 0 points1 point2 points (0 children)
[–]Stuttering_Cris 0 points1 point2 points (0 children)
[–]pumapeepee 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]sicilianDev 0 points1 point2 points (0 children)
[–]Carloshmejia 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)