zoukankan      html  css  js  c++  java
  • python 定义类 学习1

     此时的d1就是类Dog的实例化对象

    实例化,其实就是以Dog类为模版,在内存里开辟一块空间,存上数据,赋值成一个变量名
    # 定义类模板
    class dog(object):
    
    
    
        # 定义类的方法功能 
        # 说话功能 self 必须有
        def sayhi(self):
            print("helo")
    
    # 通过类 实例化对象
    d1 = dog("小涛")
    print(d1)
    
    # <__main__.dog object at 0x0000000001ECD208>
    
    # 通过对象 调用类里的方法
    d1.sayhi()
    
    # helo
    # 定义类模板
    class dog(object):
    
        # 定义类的 属性
        def __init__(self, name):
            # 相当于创建一个变量 NAME
            self.NAME = name
    
        # 定义类的 方法功能 
        # 说话功能 self 必须有
        def sayhi(self):
            print("helo")
    
    # 通过类 实例化对象
    d1 = dog("小涛")
    d2 = dog("小峰")
    print(d1)
    
    # <__main__.dog object at 0x0000000001ECD208>
    
    # 通过对象 调用类里的方法
    d1.sayhi()
    
    d2.sayhi()
    
    
    # helo

     这里类由 多个函数拼出来的 函数的特性局部变量也有

    有了self 就可以在函数之间的局部变量的调用  ,各种字符串格式化格式

    # 定义类模板
    class dog(object):
    
        # 定义类的属性
                    # d1
        def __init__(self, name):
            # 相当于创建一个变量 NAME
            self.NAME = name
    
            # D1.NAME =name
    
        # 定义类的方法功能
        # 说话功能 self 必须有
        def sayhi(self):
            print("helo, i m is {name}".format(name=self.NAME))
            print("helo, i m is {0}".format(self.NAME))
            print("helo, i m is %s" % self.NAME)
            print("helo, i m is", self.NAME )
    
    # 通过类 实例化对象 d1 d2
    d1 = dog("小涛")  # dog(d1, "小涛")  传参数
    d2 = dog("小峰")
    print(d1)
    
    # <__main__.dog object at 0x0000000001ECD208>
    
    # 通过对象 调用类里的方法
    d1.sayhi()
    
    d2.sayhi()
    
    
    # helo, i m is 小涛
    # helo, i m is 小峰

    没有实例化 打印类 证明创建类后 类已经存在内存里了

    # 定义类模板
    class dog(object):
    
        # 定义类的属性
                    # d1
        def __init__(self, name):
            # 相当于创建一个变量 NAME
            self.NAME = name
    
            # D1.NAME =name
    
        # 定义类的方法功能
        # 说话功能 self 必须有
        def sayhi(self):
            print("helo, i m is {name}".format(name=self.NAME))
            print("helo, i m is {0}".format(self.NAME))
            print("helo, i m is %s" % self.NAME)
            print("helo, i m is", self.NAME )
    
    # 通过类 实例化对象 d1 d2
    # d1 = dog("小涛")  # dog(d1, "小涛")  传参数
    # d2 = dog("小峰")
    # print(d1)
    #
    # # <__main__.dog object at 0x0000000001ECD208>
    #
    # # 通过对象 调用类里的方法
    # d1.sayhi()
    #
    # d2.sayhi()
    
    # helo, i m is 小涛
    # helo, i m is 小峰
    
    print(dog)
    
    # 执行结果
    <class '__main__.dog'>

    实例化后产生的对象 叫 实例 。  d1、d2就是实例 ,  self 就是实例

    __init__   就是构造函数 构造方法    函数是类的方法

    # 定义类模板
    class dog(object):
    
        # 定义类的属性
                    # d1
        # self 就是实例
        def __init__(self, name):  # 构造函数 构造方法==初始化方法
            # 相当于创建一个变量 NAME
            self.NAME = name
    
            # D1.NAME =name
    
        # 定义类的方法功能
        # 说话功能 self 必须有
        def sayhi(self):    # 类的方法
            print("helo, i m is {name}".format(name=self.NAME))
            print("helo, i m is {0}".format(self.NAME))
            print("helo, i m is %s" % self.NAME)
            print("helo, i m is", self.NAME)
    
    # 通过类 实例化对象 d1 d2
    d1 = dog("小涛")  # dog(d1, "小涛")  传参数
    d2 = dog("小峰")  # 实例化后产生的对象 叫 实例 d2就是实例
    
    # 定义类模板
    class dog(object):
    
        # 定义类的属性
                    # d1
        # self 就是实例
        def __init__(self, name):  # 构造函数 构造方法==初始化方法
            # 相当于创建一个变量 NAME
            self.NAME = name
    
            # D1.NAME =name
    
        # 定义类的方法功能
        # 说话功能 self 必须有
        def sayhi(self):    # 类的方法
            print("helo, i m is {name}".format(name=self.NAME))
    
    
        def eat(self,food):
            print("helo, my name is %s, i like eat %s" %(self.NAME,food))
    
    
    # 通过类 实例化对象 d1 d2
    d1 = dog("小涛")  # dog(d1, "小涛")  传参数
    d2 = dog("小峰")  # 实例化后产生的对象 叫 实例 d2就是实例
    
    d1.eat("苹果")  # helo, my name is 小涛, i like eat 苹果
    
    
    

  • 相关阅读:
    图片上传-下载-删除等图片管理的若干经验总结3-单一业务场景的完整解决方案
    图片上传-下载-删除等图片管理的若干经验总结2
    HDU 1195 Open the Lock
    HDU 1690 Bus System
    HDU 2647 Reward
    HDU 2680 Choose the best route
    HDU 1596 find the safest road
    POJ 1904 King's Quest
    CDOJ 889 Battle for Silver
    CDOJ 888 Absurdistan Roads
  • 原文地址:https://www.cnblogs.com/mingerlcm/p/8393283.html
Copyright © 2011-2022 走看看