Thank you! You guys helped me out alot. @Alan your website is great! Really clearly written. Especially the "Things to remember" part.
If you have exercises for me or have a Website with exercises, bring it on. I think this is the best way to learn. 2013/10/22 Dave Angel <da...@davea.name> > On 22/10/2013 10:25, Sven Hennig wrote: > > > Hello, I would like to learn a programming language and have decided to > use > > Python. I have some programming experience and doing well in Python. What > > really causes me problems is OOP. > > I'm just dont get it... I'm missing a really Practical example. In every > > book I've read are the examples of such Class Dog and the function is > bark. Has > > anyone an OOP example for me as it is really used in real code, so I can > > better understand the concept? I do not know why this is so hard for me. > > > > What you may not realize is you're already doing OOP, just by using the > standard library. When you open a file (or many other things that can > produce a stream of bytes), you get an instance of class file. When you > use that instance, you're calling methods of that instance. So when you > say: > > infile = open("myfile.txt,"r") > data = infile.readline() > > you're doing object oriented programming. You don't have to know what > kind of thing "infile" is, you just have to know it has methods read(), > readline(), close(), etc. > > When you want to write your own classes, or when you want to make a new > class that's related but different from one of the thousands that are > standard, that's when it gets interesting. As Alan says, GUI is one > place where you'll be wrting your own classes, usually by deriving from > one of the GUI library classes. > > At its most fundamental, a class is a description of how to create and > how to manipulate instances. An instance has methods (functions), and > attributes (data). When one class is derived from another, it can share > some or most of the attributes and behavior of the parent class, but > make changes. This helps avoid duplicating code when two things are > similar. > > You're familiar with list and tuple. Those are built-in > collection classes, supported explicitly by the language. But if you > want your own collection, you may want to make a class for it. The Dog > bark() example may seem silly, but a Dog has lots of other methods > besides that one, and has lots of attributes (color, breed, health > state, owner, etc.). In a sense those attributes are like a list within > the Dog, but you want them to have nice names, instead of remembering > that the 3rd one is owner. > > > -- > DaveA > > > _______________________________________________ > Tutor maillist - Tutor@python.org > To unsubscribe or change subscription options: > https://mail.python.org/mailman/listinfo/tutor >
_______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor