面向对象(一)

 一   类: 我们平时用到的str、int、tuple等皆为类

       例:  class Fruits:            #(默认继承object)

                   pass

               fr = Fruits()            #fr为类的实例

               fr.color = 'red'         #手动添加类的属性(color) 

二    1、类的初始化: 使这个类拥有自己的特性

        例: class Fruits:                                  #类的定义

                    def __init__(self,name,color,weight=90):

                        self.name = name

                        self.color =  color   

                        self.weight = weight             #weight为默认参数

               fr1 = Fruits('apple','red')               #类的实例化

               fr2 = Fruits('banana','yellow')

               fr3 = Fruits('aplle','green',100)      #100会覆盖掉100,如果不写,默认为90

       

         2、isinstance(实例名称,类名)     判断一个实例是不是这个类的实例

              例: isinstance(fr1,Fruits)        返回True,布尔型

         

         3、类和实例属性

             class  Fruits:

                fruits = 'xxxx'                       #类的属性

                def__init__(self,name,color):

                     self.fruits = 'yyyy'             #实例的属性

             类的属性可以通过实例本身进行调用,当没有定义self.fruits时,可以通过fr1.fruits访问到‘xxxx’ ; 如果定义了self.fruits,在fr1.fruits,返回的就是‘yyyy’了。

             类属性也可以通过类名调用,例:Fruits.fruits  可返回‘xxxx’,不常用。

            

        4、方法属性

          例: class Fruits:                                

                     def __init__(self,name,color,weight=90):

                         self.name = name

                         self.color =  color   

                         self.weight = weight             

                 def   show(self):          

                     print('我的重量:%s'% (self.weight) )

           运行:fr1.show()           返回:我的重量是90              #此时的fr1为方法属性

           注意:前面的数据属性直接回车就能调用,例:fr1.name  回车就可调用

                   方法属性必须加括号,例:fr1.show()                 回车调用       

原文地址:https://www.cnblogs.com/renjidong/p/6772097.html