Using Classes and Objects in Python | Learning Python for Beginners | Code with Kylie #9

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ม.ค. 2025

ความคิดเห็น • 88

  • @yonassisay3061
    @yonassisay3061 4 ปีที่แล้ว +9

    you are good ,Appreciate that but
    what is the difference b/n function and Class?
    and what is the d/f between (in function ) def __beach __: and def beach : ?

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว +22

      Good question.
      Let's use our beach example and lets say we want a script that will go through all the beaches in the world and pick out ones that might be fun to go to.
      Functions are just blocks of code that have a name. I can make any few lines of code into a function. Usually when I make functions, each one has a specific "task" that makes it logically separable from the rest of the code (so in my script i might have some functions like get_all_beaches which might have code that gets all the beaches in the world, then filter_beaches which might have code that filters through all of those beaches, etc.) You could technically just put everything into the script without the functions but it helps with organization.
      On the other hand, classes represent objects, so it's not really just "a chunk of code that we name". Instead, it's like saying "hey let's create something that helps us represent a beach". In my example, after getting all the beaches in the world, I would create beach objects for each beach just to represent them in a clean way. Then I can store name, location, water color, etc. as part of the object's properties instead of as a random dictionary.
      Does this make any sense?

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว +19

      And then for the difference between the functions within the class that are like __init__() vs something_like_this..
      __init__ is a standardized python function for classes. Functions like this are actually called magic methods. When you create an instance of the object, python knows to run this function __init__(). In a similar way, if we have a method in the class __str__(), this actually would tell python how to make a string representation of the object so if we have cancun_beach = Beach('Cancun') and we do print(cancun_beach), it would print whatever the string representation is, so it actually prints cancun_beach.__str__()...
      Other functions are ones that you are defining and adding to the class.
      Take a look at these resources if my explanation isn't very good:
      www.geeksforgeeks.org/dunder-magic-methods-python/#:~:text=Dunder%20or%20magic%20methods%20in%20Python%20are%20the%20methods%20having,__%2C%20__repr__%20etc.
      www.journaldev.com/22460/python-str-repr-functions
      Hope this helps

    • @yonassisay3061
      @yonassisay3061 4 ปีที่แล้ว +2

      Tnx i understand, again tnx alot

    • @kasrasharafi5007
      @kasrasharafi5007 2 ปีที่แล้ว

      Awsome👌

    • @RR-et6zp
      @RR-et6zp 2 ปีที่แล้ว

      @@KylieYYing this is amazing, thanks!

  • @pythonantole9892
    @pythonantole9892 2 ปีที่แล้ว +2

    I have always struggled to understand classes especially the use of "self". This is the best explanation i have come across so far and now i have a good understanding of classes. I'm actually surprised at how easy it is, almost feel stupid that i struggled with the concept for t6oo long. Thank you! Thank you!

  • @hartsgrace1205
    @hartsgrace1205 2 ปีที่แล้ว +1

    I cannot thank you enough Kylie. You are a beautiful soul. I was two runtime errors away from dropping the class because I couldn't figure out Zybooks but you broke everything done so wonderfully it just made sense. So my future bachelor's degree is all thanks too you!!!

  • @echoic-yl5wj
    @echoic-yl5wj ปีที่แล้ว

    Watched almost all popular OOP videos and this one helped me understand it a whole lot more, thank you

  • @jjjjjkkkkk
    @jjjjjkkkkk 3 ปีที่แล้ว

    Kylie, I've just watched 5 videos on classes back to back and this was by far the best explanation.

  • @paulcap9688
    @paulcap9688 3 ปีที่แล้ว

    Hands down one of the clearest explanations of basic Python on YT. Thanks so much for your vides Kylie

  • @BlueGuitarMusic
    @BlueGuitarMusic 3 ปีที่แล้ว +3

    Such an awesome explanation. Thank you so much you have helped me a ton with this difficult concept. I hope you find success teaching- amidst others I have seen- your teaching style is very easy to pick up and learn from right away. VERY awesome, very thankful!

  • @teacherinthailan6441
    @teacherinthailan6441 3 ปีที่แล้ว +3

    Excellent lesson! You really are a great teacher. Thanks once again.

  • @bhaithrinley9602
    @bhaithrinley9602 3 ปีที่แล้ว

    Hi ! I am a monk.
    I have been learning coding to help the Tibetan astronomy science to preserve.
    I could have done some projects on it, and I am still on progress to accomplish. but because of lack knowledge on python I am stuck ..... I watch your videos , they are helping me to build up concepts.....Thanks

  • @Mikendlela27
    @Mikendlela27 2 ปีที่แล้ว

    You literally started my career in coding

  • @sebastiansuarez9883
    @sebastiansuarez9883 4 ปีที่แล้ว +3

    I do not code and do not ever plan on it, but I watch all your vids!

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว

      🥺🥺🥺 thank you

  • @Grace-p2z
    @Grace-p2z ปีที่แล้ว

    You motivate me to do better!!! I struggle with this simple concept!!!

  • @elementour
    @elementour 4 ปีที่แล้ว +4

    so it seems as though video number 9 is when we take things up a notch. I might have to watch this one a few times as my brain currently feels like it did after i watched Inception for the first time haha

  • @arpeggio1231
    @arpeggio1231 2 ปีที่แล้ว +1

    damn girl you go fast, I've gotta pause the video to catch up rofl. But you helped me heaps though very good examples you shown Thanks

  • @chude_o
    @chude_o 3 ปีที่แล้ว

    Great tutorial. Been struggling with classes a lot and this really helps.❤❤❤

  • @royjuarez664
    @royjuarez664 2 ปีที่แล้ว

    You are a good teacher.

  • @ayanupadhaya6972
    @ayanupadhaya6972 3 ปีที่แล้ว +1

    I love you Kylie, you are so great at teaching...

  • @saswatighosh3162
    @saswatighosh3162 3 ปีที่แล้ว

    U are so talented ,indeed an inspiration to me!

  • @gblakney
    @gblakney 2 ปีที่แล้ว

    Love your videos! So clear and thorough! is the terminal app the same thing as the command prompt? and how do you paste that path in so fast? and maybe you have a video that is a brief intro to using the terminal app to run the code I write in vscode? never mind... figured it out on my own. Still love your videos! slowly working my way through all of them. started with PyCharm Community, mostly because it has lots of buttons, then moved to Mu, which I use with my middle school club, then downloaded vscode, which seems pretty intuitive. thanks for being so patient with all of us!

  • @magdalineidogun5935
    @magdalineidogun5935 2 ปีที่แล้ว

    Heyy Kylie, how are you doing. I'm a new subscriber of your channel and love the contents you have on. I am also a new learner of Python language. I wanted to know how i can be good at writing my own codes and what steps i should take from the basics. Thank youuu

  • @gitaralang
    @gitaralang 2 ปีที่แล้ว

    thanks for the vid really helpful. Can I ask what is the purpose of the last 3 blocks starting in if __name__? thanks a lot and more power!

  • @cgmsounds
    @cgmsounds 3 ปีที่แล้ว

    I love you didnt wait to get your desk to do this.

  • @pierreissa3179
    @pierreissa3179 2 ปีที่แล้ว

    your videos are very helpful.
    Thank you so much.

  • @Mikendlela27
    @Mikendlela27 2 ปีที่แล้ว

    Thank you so much Kylie

  • @KylieYYing
    @KylieYYing  4 ปีที่แล้ว

    Other good resources to check out:
    docs.python.org/3/tutorial/classes.html
    www.w3schools.com/python/python_classes.asp
    www.learnpython.org/en/Classes_and_Objects
    Subscribe for more coding lessons/tutorials!! :)
    Follow me on insta/twitter: @kylieyying

  • @wah704
    @wah704 3 ปีที่แล้ว

    Hey!
    I'm having some issues with the last bit of code at 11:43. Everything up until "print(cape_cod_beach.parts)" works just fine, but the second last line gives me an error:
    AttributeError: 'Beach' object has no attribute 'add_parts'.
    Very helpful video! Thank you so much!

  • @ankithrajashekar2406
    @ankithrajashekar2406 3 ปีที่แล้ว

    Ahh your videos are so helpful! Coding is fun who knew?! Well I guess you did😂

  • @ghostwhowalks5623
    @ghostwhowalks5623 2 ปีที่แล้ว

    Awesome video! How would you save this class as a separate .py file and import it into other notebooks? I've been trying....but name-errors all over....some functions inside the class are "not defined"......

  • @sushma6274
    @sushma6274 3 ปีที่แล้ว

    Very nice explanation!!!

  • @rajathpd3513
    @rajathpd3513 4 ปีที่แล้ว

    Loved the video! It helped a lot!

  • @shashidharmuniswamy2620
    @shashidharmuniswamy2620 3 ปีที่แล้ว

    Thank you for the video! When a parameter is passed to a class, why should the parameter be assigned to 'self.parameter' and an attribute be created? Isn't the parameter available throughout the class and given? Is it to assign some type of memory to the parameters?

  • @witthayamaidee9430
    @witthayamaidee9430 3 ปีที่แล้ว

    Thank you Kylie

  • @rachitmehta7738
    @rachitmehta7738 4 ปีที่แล้ว +2

    Hi . I have one doubt:
    1) What is the need for
    if __name__ == '__main__':

    • @tunamusic2314
      @tunamusic2314 3 ปีที่แล้ว +1

      i also don't understand that. can anyone explain ???

  • @brunoavelar4003
    @brunoavelar4003 3 ปีที่แล้ว

    Why do you run your program with the terminal app? Isn't it more efficient to just press "run" in the text editor?

    • @KylieYYing
      @KylieYYing  3 ปีที่แล้ว

      Sometimes you need to control which directory you run it from and tbh I like terminal because it makes me look cool hahaha

  • @forhadali5927
    @forhadali5927 2 ปีที่แล้ว +1

    Nice vedio i am from Bangladesh

  • @pythonholic
    @pythonholic 2 ปีที่แล้ว

    Thank you queen ♥️♥️♥️

  • @t0mcat-
    @t0mcat- 3 ปีที่แล้ว

    Thank you Teacher Kylie

  • @processorbot8761
    @processorbot8761 4 ปีที่แล้ว +1

    I love your channel Kylie :-D

  • @omarkalom1962
    @omarkalom1962 4 ปีที่แล้ว

    Thank you Kylie.

  • @vass8438
    @vass8438 2 ปีที่แล้ว

    Kylie, when I execute this code in Pycharm (windows) I get
    what am not doing right?

  • @codevsgame
    @codevsgame 2 ปีที่แล้ว

    “Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” - Martin Fowler
    go ahead best of luck!!

  • @MrHorse16
    @MrHorse16 4 ปีที่แล้ว

    Would the initialisation still work if we renamed __init__ to something else?

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว +1

      No, to custom initialize a class you need to define the code under the __init__ method

    • @MrHorse16
      @MrHorse16 4 ปีที่แล้ว

      Kylie Ying Thank you! Could you also explain to me __name__ == ‘__main__’? Cheers!

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว +2

      That part is basically saying if you’re directly running the script (ie ‘python3 main.py’) then you run that part under the if.
      Then you might ask, when would you not run the script directly? This is the case when we actually define maybe functions or classes in a script (let’s say this is helper.py) and then import them from another file (let’s say main.py). Well in helper.py, I might want to run some stuff to help make sure I’m coding the right thing, but I don’t want these to actually show up when I try running main.py.
      If we don’t have that if statement then when we run main.py we actually run whatever random code is in helper.py. But if we add the if statement, then we can import helper without running the random code under the if statement. Does that make sense?
      Good practice for making sure your code doesn’t print out random stuff when you have a ton of imports and files.

    • @MrHorse16
      @MrHorse16 4 ปีที่แล้ว

      Kylie Ying Thank you for the succinct reply! I guess these practices will be more helpful as my code gets more complex.
      Also ur channel is underrated af keep it up :-)

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว

      🥰🥰 thank you!!!

  • @AbhiShekA-A
    @AbhiShekA-A 4 ปีที่แล้ว +1

    Hi Kylie watching all your videos since morning you are really good can you please try more projects also thanks I was lacking with some of concepts .

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว +1

      Yes, the plan is to do more projects after I’m doing with the intro python series

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว +1

      I will also be redoing some projects (hangman/tic tac toe)!! Now that I’m better at making coding videos haha

  • @DonovanKong
    @DonovanKong 4 ปีที่แล้ว

    Appreciate the lesson Kylie! #nodeskgang!

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว

      :’) Im getting one soon!

  • @Praxama
    @Praxama 2 ปีที่แล้ว

    thank you

  • @getoverhere4465
    @getoverhere4465 4 ปีที่แล้ว

    Nice!

  • @unknown-q7p3u
    @unknown-q7p3u 3 หลายเดือนก่อน

    Hello, hope you are doing well. I have a few questions, what is the difference between instances and objects and what is the main purpose of __init__ and can we use another parameter instead of self and one more misconception of mine is what is the main function of self? I hope someone can help me I would really appreciate it because I am one of your subscribers seeking help.Hope I can get a reply ASAP. Again I would really appreciate it. Have a good day. If you are available please upload a new video on classes. Thx

  • @rachitmehta7738
    @rachitmehta7738 4 ปีที่แล้ว

    Great tutorials .
    I fpossible could you make tutorials for python app development too . Thanx . :)

  • @pauluseche2932
    @pauluseche2932 3 ปีที่แล้ว

    hey can someone tell me what program she uses to code. Im new to programming and i would love to have those small windows that explain the different functions and things. thanks :). sorry for bad english

    • @AMoore-qx6vv
      @AMoore-qx6vv 3 ปีที่แล้ว

      It’s Visual Studio Code!

  • @opthumara1463
    @opthumara1463 3 ปีที่แล้ว

    mam can you tell me what is the use of __name__ ?

  • @teaspells9994
    @teaspells9994 3 ปีที่แล้ว

    But how don't use this for real world projects?

  • @musicNmusique
    @musicNmusique 4 ปีที่แล้ว

    Which text editor is this?

  • @martaklis7096
    @martaklis7096 ปีที่แล้ว

    could You please, explain me line 27 ?(;

  • @aravind_ontagodi
    @aravind_ontagodi 4 ปีที่แล้ว

    Make more videos on oop in python

  • @helovesdata8483
    @helovesdata8483 3 ปีที่แล้ว

    True coders start on the floor anyways ...lol I just started python two weeks ago and I'm working on classes now.

  • @mohgawsih6958
    @mohgawsih6958 4 ปีที่แล้ว +4

    Take it easy lady . . . some of us here are old . . . go slower please and avoid confusing names . . . otherwise . . . u r great as usual . . . thank you

  • @fhnine2698
    @fhnine2698 ปีที่แล้ว

    thanks appreciate, no bla bla

  • @aaravagarwal7806
    @aaravagarwal7806 3 ปีที่แล้ว

    OBJECTS!!!!!!!!!!!!! AAAAAAARRGGHHH!

  • @adonis9555
    @adonis9555 3 ปีที่แล้ว

    Hi world

  • @ig2247
    @ig2247 2 ปีที่แล้ว

    Hye

  • @diegos2184
    @diegos2184 2 ปีที่แล้ว

    mamasita

  • @metehand8838
    @metehand8838 3 ปีที่แล้ว

    why you cute tho ? thanks dude nice lesson

  • @francoisjarzabek1412
    @francoisjarzabek1412 4 ปีที่แล้ว

    Ok I need to re watch the self part I understand the code and result but self nope 😅

    • @KylieYYing
      @KylieYYing  4 ปีที่แล้ว +4

      Hahahahah think of yourself as a “Person” object. We are all instanced of the Person object. In order to get the person’s name you do self.name for example which refers to that person’s self.... it tells the object to look at that specific instance and look for the attribute... does that make more sense?

  • @javhaasuhochir8126
    @javhaasuhochir8126 2 ปีที่แล้ว

    oh shit the class is the worst topic I struggle

  • @YM-lm8xr
    @YM-lm8xr 4 ปีที่แล้ว

    this video's learning curve is toooo steep.....