Python OOP Tutorial 1: Classes and Instances
ฝัง
- เผยแพร่เมื่อ 11 มิ.ย. 2024
- In this Python Object-Oriented Tutorial, we will begin our series by learning how to create and use classes within Python. Classes allow us to logically group our data and functions in a way that is easy to reuse and also easy to build upon if need be. Let's get started.
Python OOP 1 - Classes and Instances - • Python OOP Tutorial 1:...
Python OOP 2 - Class Variables - • Python OOP Tutorial 2:...
Python OOP 3 - Classmethods and Staticmethods - • Python OOP Tutorial 3:...
Python OOP 4 - Inheritance - • Python OOP Tutorial 4:...
Python OOP 5 - Special (Magic/Dunder) Methods - • Python OOP Tutorial 5:...
Python OOP 6 - Property Decorators - • Python OOP Tutorial 6:...
The code from this video can be found at:
github.com/CoreyMSchafer/code...
✅ Support My Channel Through Patreon:
/ coreyms
✅ Become a Channel Member:
/ @coreyms
✅ One-Time Contribution Through PayPal:
goo.gl/649HFY
✅ Cryptocurrency Donations:
Bitcoin Wallet - 3MPH8oY2EAgbLVy7RBMinwcBntggi7qeG3
Ethereum Wallet - 0x151649418616068fB46C3598083817101d3bCD33
Litecoin Wallet - MPvEBY5fxGkmPQgocfJbxP6EmTo5UUXMot
✅ Corey's Public Amazon Wishlist
a.co/inIyro1
✅ Equipment I Use and Books I Recommend:
www.amazon.com/shop/coreyschafer
▶️ You Can Find Me On:
My Website - coreyms.com/
My Second Channel - / coreymschafer
Facebook - / coreymschafer
Twitter - / coreymschafer
Instagram - / coreymschafer
#Python
Tears from my eyes when I finally understood what "self" keyword here is all about. Thank You!!
Mirrors are miracles :D
Same here lol
Love from Chennai ❤️👌👍
Tears from my dong idk what's wrong
Same feeling
Not all heros wear capes. Corey you are the man!
NO CAPES!
maybe he wears a cape, we haven't seen the guy.
That was the most fantastic explanation of classes I have ever seen. Thank you very much!
He actually wears a cape when he works. Also when he sleeps.
did you just assume that he doesnt wear a cape?
To everyone who is learning through Corey's channel. Do not ever doubt yourself whether you will land a job or not.
You will, because I did by watching his videos.
Thanks Corey. You are the best teacher.
That is AWESOME!!! So happy to hear you were able to land a job!
What specifically did you learn form this Channel ?
Python or else ?
@@ayeshavlogsfun Of course Python
@@occasionaltraveler Did you learn whole python from this Channel mean beginner to Advance ?
And what type of job are you doing using python ?
thanks for this motivation
00:00 Introduction
00:33 Why use classes
01:09 A simple class
02:13 Class vs Instance
04:43 Initializing instance attributes with `__init__`
09:00 Custom instance methods
11:35 Importance of passing `self`
Link for this topic
People like you are why I graduated lmao
@@bucky5269 yup
good human
In my 3 years of trying to learn object-oriented Python, not a single teacher adequately explained what the "self" keyword was for -- until now. Thank you again Mr. Schafer!
If it's taken you three years, I'd just stop trying tbf.
dude 3years??
im so happy I watched this video 2 weeks in :)
One tutorial I used said "We'll explain this concept later" and just never addressed it again
3 yrs 😆
I've just shown this video to my teacher. Now he's my student.
Laugh so hard for this...
this is the best comment so far
😂😂
Haha lol seriously??
Goru Kun you’re joking right? You didn’t seriously think this even happened
Absolutely superb presentation! Worlds better (and more useful) than Udemy!
I honestly dont understand why people like this dont make udemy courses... Every second udemy course is just no explanations
Better than codeacademy too
ikrrr, I had a hard time understanding this through Jose
@@intothevode no wayyy
yes definitely!
✏ Notes
attributes = data,
methods = functions
Instance of a class
class variable , instance variable
🔖 Bookmarks
00:00 Introduction
00:33 Why use classes
01:09 A simple class
02:13 Class vs Instance
04:43 Initializing instance attributes with `__init__`
09:00 Custom instance methods
11:35 Common Mistake - Importance of passing `self`
14:25 Summary
ty
I honestly wish I just sat in my room and watched your videos rather than going to university. Much clearer and much cheaper and less stress.
Whats stopping you?
@@mrpanda7777 Sat is a past tense
what you study in college is more important than you think!
@@VMYE-ir6vw balls
@prostavse we are the same
University professors should learn from you regarding " how to teach students". Love from India, sir.
Government funded bull shit. I can learn complex mathematics, science and physics online for free better then a $100,000 university degree could teach me.
Yes🎉
This series of lessons is honestly some of the best training I've ever seen. It's so clear and concise. The examples are perfect too. I'm writing this 4 years after they were released and they still hold up perfectly.
Finally a tutorial that doesn't try to use all kind of metaphors, but just explain it like it is. Thanks!
lol dude
This tutorial about classes cannot be better. I really mean it, its just perfect. In my life i may have commented 3 videos here on youtube altogether, but this time i really needed to say THANK YOU, because you saved me lot of time, effort, and nerves. I am just looking forward to your other videos. Amazing work!
Awesome. Thanks, Michal!
its good to see that not only programmers or people who wanna learn watch these videos, but also morons do
Corey Schafer sir what application did you use? And how to download it for free? Thank you so much in advance :)
Michal Mikuláši what application is that sir? Is it notepad++?
John P Smith
You are better organized than some paid courses. Bravo !
*all paid courses.
@@niteshchauhan4625 Thanks God, I haven't tried them all, but you may well be right! Much better than Udemx....
Yeah. That's what I thought.
that's what i was gonna say 😂
@@meatyout Udemy is just awful. Pretty, packaged courses. No content.
2022 and still one of the most intuitive and relevant videos on OOP in TH-cam. Thanks Corey for this playlist, looking forward to complete the whole series within this week
I have just started OOPs and every other videos I have watched , they were like “you have to use self, it is just the way”. Only u explained why it is there and for curious beginner that is very important.❤
exactly
It's there because the python inventors are weird like that.
It could simply be a keyword like in Java.
Then it would be: def set_first(first): self.first = first
""SELF"" the biggest mystery finally solved
same here
for mee too
yes
Literally I was crying when I finally understand actual work of "self" keyword.
Saviour !!!
Corey, thank you 1000 times! Very good explanation of object-oriented concept. Understanding self was a challenge and you were able to help it to sink in. Forever grateful!
Simple, concise and an amazing piece of work! Not only did I understand something I've been struggling to wrap my head around for a while, but I can now explain everything to my classmates too. Thanks a lot for making me look like some sort of Python Jedi.
I don't know you but before recording this video, it is crystal clear that you asked yourself how can I be explaining better the concept of class/object to novice learners and you just nailed it. Huge thanks for great work man. We all humans should consider of adding perfectness to our professions. Cheers from Istanbul!
A month of confusion fixed in 15 minutes. Excellent job. Subbed.
This defiantly got my sub. People always seem to jump around, or leave things out, or mix terms when describing classes. This has been the most straightforward explanation I've come across.
No one can teach Classes in python better than this. Great tutorial for beginners. Thank you!!!
I learnt more in this 15mins video than in my entire semester
Seems like you never payed a visit to your school
@@Arthurk346 i can confirm that some universities are so dumb that the statement above is true sometimes
Mate,
I have hit gold.
You legit explained OOP to me like it was so fucking simple.
OOP is easyly one of the hardest concepts in computer programming but you explained it in a way i think anyone can understand.
Thank you so much!
Awesome... that's nice to hear. Glad you found it useful!
I'm pretty sure I grasped the concept in the first 5 minutes, the pieces were finally coming together. Corey definitely made it sound so simple!
Some people walk around earth without a purpose. But, Corey is sharing his purpose !
Out of the many years I've watched videos about anything on TH-cam, I can count on my hands the number of times I've actually commented on a video. However, the way Corey explained Python OOP through this video, especially a week before my computer science exam, I just had to drop a comment. This is one of the best and most informative instructional videos I've ever seen, like ever even outside of computer science.
Well done!
I teach CS and Cory's channel is always my recommendation when a students needs supplemental material. Cory is my go to guy when I can't quite get through a particular student. Thank you Mr. Schafer for saving my butt more than a few times. Ironic note. I actually have a dog named Brooklyn lol
this made me realize that I actually don't know how classes work
"That's not extremely important to know" is such an understatement -- I can't believe how clearly you explained "self"! You are amazing.
Corey. I have taken Java classes at a local university and I am a programmer from the 1980s. Classes really confused me when I took Java. Just couldn't get my head wrapped around the vocabulary. Your explanation was spot on. Thanks a great deal. Very appreciative of you taking the time to help folks like me.
This is the most clear explanation and demonstration on TH-cam, I paid 120$ for a python class and it’s not as clear as this. Good job man keep up the good work!
I would give the nobel prize for this explanation. Thank you Schafer.
Have been searching all over the internet for a week to understand what classes are for and what is self here, this example was the best way to explain classes in python so far from videos and materials I have seen. Thank you.
I love how you go through examples of "manually" setting up classes and proceed to use the constructor with the INIT method. out of all the python videos this one explains it amazing. I also appreciate the way you explained class and instances and the differences.
print("thank you")
@alexandru dumitru It's necessary to escape the inner double quotes like this, otherwise there will be a SyntaxError ^_^
response = input("*INSERT \"NICE\"*")
@alexandru dumitru lmao
@@majabojarska4821 No sleeping on syntax out here 🙌
Maja Bojarska .
I can't believe it, impossible became possible. I now understood what is "self" thanks a lot man. Can't thank you enough.
Brilliant stuff! So clear and very well presented because there's no extra talking or fluff - straight to the point.
Easily one of the most thorough and easy to follow guides! Most other videos explaining classes do not articulate their purpose as useful as Corey!
Any time I'm looking for a video explaining any coding stuff, it's always a bonus to find that Mr Schafer has the topic covered. Always good stuff from this guy. Clear diction, crystal clear explanations, pin sharp video, no silly background music, no lame attempts at humour or sounding cool, no dogs barking in the background, etc etc, just solid 100% no BS explanations and knowledge. Many Thanks.
I'd make more lame attempts at humor if I were funny haha. But thanks for the kind words... I appreciate it. Glad to hear you find the videos helpful.
He deliberately made the mistake at 4:33 to show us how powerful classes are. Genius move. A true coder.
@@ShahyanBharucha30 Shut your mouth.
@@ShahyanBharucha30 Shut the fuck up, moron!
I thought so too ahah
@@dystopian_1 You is a punk!
@@af6727 No, you is.
oh Allah! this is beyond explanation, this man is from another planet which is good at explaining confused things like "self" hahhh in a more clear and concise way. i can't thank you enough man. i really appreciate it
After the whole semester of object oriented programming, I finally fully understood the fundamentals of it. Love your tutorial! Going to watch the next one right away :) Thank you!
My teacher took whole semester for this still I wanted to withdraw but this guy here.......did that in 15 min Dayum!
i am completely beginner to coding.after started watching you're videos find coding is awesome.i have suggested these videos my other 3 colleagues to learn python basics.Gained lot confidence.Thank you.Thank you from India.
Instead of writing all that, just to get the employee fullname, you can just write:
print(emp_1.first + emp_1.last)
I’ve never experienced such clarity, deep teaching intent and professionalism in my life . This was astounding
You've explained this in a way others have not been able to, without over-simplifying or over-complicating. Much appreciated!!! Thank YOU!
It's the plain English explanation of the difference between statements such as
A. Emp_1.fullname()
B. Employee.fullname(Emp_1)
that make the difference and sets your tutorials apart from the rest. Better than Netflix. I binge watch Corey tutorials
Thanks!
What a great video, i have no words. Thank you Thank you Thank you!!!
I just want to share 1 thing from goolge for those who might have some difficulties with the word instance.
*An instance, in object-oriented programming (OOP), is a specific realization of any object. An object may be varied in a number of ways. Each realized variation of that object is an instance. The creation of a realized instance is called instantiation.
Each time a program runs, it is an instance of that program. In languages that create objects from classes, an object is an instantiation of a class. That is, it is a member of a given class that has specified values rather than variables. In a non-programming context, you could think of "dog" as a class and your particular dog as an instance of that class.*
Oh my! I’ve been writing Python code for a few months now. I’ve learned a lot, but this! This is gold. Game changer.
Clearest explanation I've seen. Thank you!
no such thing as importax or not bout it, ts a toolx, nonex. no st as clear or not
Zes dude you good?
i spend hours and hours on youtube to get a clear view and concept of "__init__" and "self" finally found this video. no words simply GREAT job done.
Best explanation of 'self' I ever heard. He covered the concept of class from so many different angles and he addressed all those question that a beginner asks while learning about the classes and especially 'self'.
2021 and this is one of the best videos I have ever seen someone teaching Python. I wish there were videos of data structures and algorithms in python taught by you sir.
My work-colleague told me about your tutorials on TH-cam. I am gonna buy that colleague a coffee.
also a paypal donation to corey
while you're at it get me a hot chocolate too. thx
is it too late to ask for a pizza for the boys at our corner of the office?
If only our universities were filled with professors like you.
God damn it! I feel as if I've wasted an entire year trying to learn something which you explained so easily and comfortably in 15 mins!!
Thank You for the wonderful explanation.
You are truely a genius, 'Self' parameter wasn't clear to me, I just remember it to use it but why it is there and what actually it does I didn't know, but now after saw your tutorials, its very clear to me. Thanks corey!
My dude, bless you. I have been so confused about classes since I started and apparently nobody wants to teach you anything about them after beginner's classes.
I'd say that these details (how classes work, what instances are, what 'self' does and what happens in the background) are what distinguish basic and intermediate knowledge. And if you at least read some about it, you may detect similarities between different programming languages, and realize that it's often 'the same', but with a slightly different syntax. At least that's how i understand it. Thanks Corey, thank you for not being lazy (like me) and actually script, record, edit a video to help others understanding a topic which is very important.
loving it. I just started learning python and its my first programming language. I love how this guy explains new words like classes and instances in such a clear way!! thank you
your vid's have become my first and last stop for programming knowledge on TH-cam. they never fail to clear up my understanding of each concept.
You are the only reason I am learning Python.. You are teaching stuff what my college couldn't do in a year
I have struggled with OOP programming for years. Always worked around it. This made me understand Classes finally! Thank you very much.
The "self" explanation is what makes the video more valuable. 😊
Just... thank you. A clear concise explanation of what classes are, how and why the syntax works, and a realistic example of how to do it. And nobody died. We're all still here.
this is SO helpful for beginners (even 6yrs later!), thanks so much! Your explanations are clear n simple, and I think this channel has now become one of my main resources for Python. You're one sub closer to 1 million!!!
I fucking love you, that's it. I've been into python for several months already and never understood why people were using classes. But now, I do understand.
Thank you :)
THANK YOU! I just went through the OOP portion of a paid tutorial but still didn't feel comfortable with the content. So I search and found you. Great thoughtful and thorough explanation.
I was trying to learn classes from other sources but here I am understanding it the way I wanted. Thank You, Corey Schafer
Straightforward, to the point, and with detailed explanations of what stuff is and why it’s the way it is.
I don't usually comment on TH-cam, but I just can't help to tell you how amazing your videos are. You are making programming exciting again for me! I am so glad to have found you! Thank you so much for making these videos!
Finally I found someone who can ACTUALLY explain the use of self ... THANKS COREY!!!!
crisp and clear. 14 mins and its all clear about class and instance. Thanks
thank you! I took a python boot-camp starting with no knowledge and the explanations were really difficult to follow so I appreciate you starting with the manual code and then translating that to a class!
One of the best explanations of class instances available on TH-cam
Wow, you did a fantastic job explaining this concept! I am learning to code for the first time and was not able to fully grasp this material until I saw your video. Thank you so much. I look forward to watching more of your tutorials.
It's been 4 years but, still best video on classes
This is one of the best python OOP series on TH-cam. Thanks Corey !!
OMG. I have been struggling to wrap my brain around all this, and you explained it so well! It's actually coming together now. Thank you so much!
This is the most amazing tutorial/ explanation on introduction to classes in python on the whole of TH-cam. Thank you so much
Corey, these tutorials are a pure gem!
Keep up the great work!
Thank you for your efforts to make it as easy to understand as possible.
I am going nuts over how effective and simple your explanation was over the multiple sources that had caused me severe phobia of "classes"! Thank you SO MUCH!!❤
I tried for so long to understand classes and what is behind it: 15 minutes of your explanation and it made Click! Thx Corey Schafer!
The most well explained lesson about classes and instances, i've ever heard. i finally got it
Thanks Corey...u'r the best
perhaps the best explanation in classes i've ever heard
Man, this 4 year old tutorial is better than any other tutorial I've ever seen including up to date ones. Thought I'd leave my comment on this masterpiece.
I've been learning Python as my first language for a few months now, but I got stuck and couldnt' grasp the concept of OOP via Python.
I started leaning OOP through books in Ruby, and I felt like the way it is presented in Ruby is SO much easier to comprehend compared to Python. I guess there's
a reason why OOP is usually introduced within the first three chapters of any Ruby textbook (forgiving syntax/true object oriented language) vice Python which teaches OOP in much much later chapters.
At any rate, once I understood the basics of OOP in Ruby (took like 2-3days).. the transition to Python OOP
was pretty easy.. It's essentialy all the same besides some terminology differences.
Great video and thanks :-)
What makes OOP in Ruby easier to comprehend ?
You're a better teacher than my CompSci Prof, dude! THANK YOU!!
After 5 years understood class , you are great Corey
best one who explains classes ever.
I bought a paid course from udemy but i was struggling to understand the concept clearly. Thank god I got this chennel.Thanks a lot
Started learning Python a few days ago. So glad I found this video this early on. You've saved me a lot of time and head scratching.
Oh my god... I sat in class totally bewildered with this topic. I feel so much better having watched this. Thank you so very much Corey Schafer! You've got yourself one massive fangirl!
after many trials to learn that "self" thingy, now i understand it after watching your video. my 3 remaining brain cells thank you
Audi Farizka LoL, I can relate to that “3 remaining brain cells” 🤣
@@williambridge9521 studying computation is tough lol
I've watched a lot programming tutorial in TH-cam... But there are no videos as good as yours... to be honest, YOU ARE THE BEST TEACHER
Thank God I landed on your channel, this is one of the best series for learning OOP.
Corey! Corey! Corey! Corey! Corey! Corey! You are an impeccable teacher. No one focuses to teach the subtlety of the topic! And here you are, explaining every bit. Just, Love you Sir!
finally!! someone explained the mystery of "self"🤗