zoukankan      html  css  js  c++  java
  • python.day.09——面向对象编程(一)

    一、类与对
    • 类:属性、动作(具有共同的属性,共同的动作)
    • 对象:每个类下面的实例
    • 语法: 关键字  class  函数 def
    • 类的语法:  class   类名  #顶格写   见名知意   驼峰命名(printName)
                                   属性
                                   函数 
    •  举例---->创建一个对象/实例化

    换件实例:  a  = 类名()   #那么a就是一个对象     

    #语法
    class giilFriend:
    # 属性
        name = "追求"
        age = 12
        car =1
        def earn_money(self):  # 与普通函数的区别? 有一个关键字 self
            print("会赚钱")
    
        def cooking(self):
            print("做超级多的饭")
    # 实例化
    gril_firend = giilFriend()
    print(gril_firend.name)
    print(gril_firend.age)
    print(gril_firend.cooking())
    
    控制台输出:
    追求
    12
    做超级多的饭
    None
    • 操作注意:
    • a.类里面的属性,和函数只能是类的实例去调用,不能单独调用--->局部变量
    • b.调用属性的方法:实例名.属性名
    • c.调用函数的方法:实例名.函数名
    • d.类里面的函数调用类里面的属性:需要加一个关键字“self.属性名”
    #语法
    class giilFriend:
    # 属性
        name = "追求"
        age = 12
        car =1
        def earn_money(self):  # 与普通函数的区别? 有一个关键字 self
            return("会赚钱")
    
        def cooking(self):
           return("做超级多的饭")
    # 实例化
    gril_firend = giilFriend()
    print(gril_firend.name)
    print(gril_firend.age)
    print(gril_firend.cooking())
    
    控制台输出:
    追求
    12
    做超级多的饭
    • 可以进行传参:传参和以前的传参一致
    #语法
    class giilFriend:
    # 属性
        name = "追求"
        age = 12
        car =1
        def earn_money(self,money):  # 与普通函数的区别? 有一个关键字 self
            return("会赚钱%s" %money)
    
        def cooking(self):
           return("做超级多的饭")
    # 实例化
    gril_firend = giilFriend()
    print(gril_firend.name)
    print(gril_firend.age)
    print(gril_firend.cooking())
    print(gril_firend.earn_money(30000))
    
    控制台输出:
    追求
    12
    做超级多的饭
    会赚钱30000
    • 类里面的函数调用类里面的属性与函数:需要加一个关键字“self.属性名  self.函数名”
    class giilFriend:
    # 属性
        name = "追求"
        age = 12
        car =1
        def earn_money(self, money): # 与普通函数的区别? 有一个关键字 self
        return ("会赚钱%s" % money)
    #  函数
        def cooking(self):
            return ("做超级多的饭")
    
        def get_name(self):
            return ("女朋友的名字%s" %self.name)   #类里面的函数调用类里面的属性
    
        def get_cooking(self):
            return ("做了多少饭:%s" %self.cooking())  # 类里面的函数调用类里面的函数
    
        def get_money(self, n1):
            return ("转了好多钱: %s" %self.earn_money(n1))  #类里面的函数调用类里面可以传参的函数
    # 实例化
    gril_firend = giilFriend()
    print("1:", gril_firend.name)
    print("2:", gril_firend.age)
    print("3:", gril_firend.cooking())
    print("4:", gril_firend.earn_money(30000))
    print("5:", gril_firend.get_name())
    print("6:", gril_firend.get_cooking())
    print("7:", gril_firend.get_money(2000))
    
    控制台输出:
    1: 追求
    2: 12
    3: 做超级多的饭
    4: 会赚钱30000
    5: 女朋友的名字追求
    6: 做了多少饭:做超级多的饭
    7: 转了好多钱: 会赚钱2000
    class giilFriend:
        name = "追求"
        age = 12
        def earn_money(self, money): # 与普通函数的区别? 有一个关键字 self
            return ("会赚钱%s" % money)
        def get_name(self, name):
            return ("女朋友的名字%s" %name)
        def get_money(self, n1, name):      # 传参与调用
            name2 = self.get_name(name)
            print(name2)
            return ("转了好多钱: %s" %self.earn_money(n1))
    # 实例化
    gril_firend = giilFriend()
    print("%s" %gril_firend.name)
    print(gril_firend.get_money(7000, '那兔'))
    
    控制台输出:
    追求
    女朋友的名字那兔
    转了好多钱: 会赚钱7000
    练习题:
    创建一个车子类:  属性:价格  颜色  品牌     技能:上山  下海  上天
    class car:
        price = 100000
        color = 'green'
        brand = '大众'
        def skill_01(self, s1):
            return ("技能1:%s" %s1)
        def skill_02(self, s2):
            return ("技能2:%s" % s2)
        def skill_03(self,s1,s2):
            ski_1 = self.skill_01(s1)
            ski_2 = self.skill_02(s2)
            return ("终极技能:劳资能上天,%s" %(ski_1+ski_2))
    mycar = car()
    print("我的车子的价格是%s" % mycar.price, "颜色是%s" % mycar.color, "品牌是%s" % mycar.brand)
    print("我的车子贼6呢:%s!!!" % mycar.skill_03("劳资可以上刀山", "劳资可以下火海"))
  • 相关阅读:
    Atitti 图像处理 图像混合 图像叠加 blend 原理与实现
    Atitit Gaussian Blur 高斯模糊 的原理and实现and 用途
    Atitit 图像处理 灰度图片 灰度化的原理与实现
    Atitit (Sketch Filter)素描滤镜的实现  图像处理  attilax总结
    Atitit 实现java的linq 以及与stream api的比较
    Atitit attilax在自然语言处理领域的成果
    Atitit 图像处理 常用8大滤镜效果 Jhlabs 图像处理类库 java常用图像处理类库
    Atitit 图像处理--图像分类 模式识别 肤色检测识别原理 与attilax的实践总结
    Atitit apache 和guava的反射工具
    atitit。企业的价值观 员工第一 vs 客户第一.docx
  • 原文地址:https://www.cnblogs.com/Rosay9204781/p/9173765.html
Copyright © 2011-2022 走看看