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 苹果