PHP前端开发

类的实例化介绍

百变鹏仔 3小时前 #Python
文章标签 实例

一、定义一个类

class Dog(object):   # 定义class    def __init__(self, name):  # 构造函数,构造方法 == 初始化方法        self.name = name   # d.name = name  类的属性 / 成员变量    def say_hi(self):   # 类的方法        print("Hello, I am a dog. My name is", self.name)    def eat(self, food):        print("%s is eating %s." % (self.name, food))d = Dog("xiaohei")  # Dog(d,"xiaohei")  d == self# d 实例化的对象即实例,类中的self相当于实例d.say_hi()   # d.say_hai(d)d.eat('beaf')
  • 第一种方法__init__()方法是一种特殊的方法,被称为类的构造函数或初始化方法,当创建了这个类的实例时就会调用该方法

  • self 代表类的实例,self 在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。

 二、self代表的实例,而非类

类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称, 按照惯例它的名称是 self。

class Dog(object):    def prt(self):        print(self)        print(self.__class__)d = Dog()print(d)print("-------------")d.prt()#输出<__main__.dog>-------------<__main__.dog><class></class></__main__.dog></__main__.dog>

从执行结果可以很明显的看出,self 代表的是类的实例,代表当前对象的地址,而 self.class 则指向类。

 

三、创建实例对象

实例化类其他编程语言中一般用关键字 new,但是在 Python 中并没有这个关键字,类的实例化类似函数调用方式。

# 创建一个Dog类的对象d = Dog("xiaohei")

实例化后的对象又称之为:实例

 

四、访问属性

您可以使用点(.)来访问对象的属性 

# 通过 d.方法   来访问属性d.eat('beaf')#输出xiaohei is eating beaf.