类就像是 一份“蓝图”或“模版”,描述了某一类对象的共同特征,包含属性(attributes)和方法(methods)。
实例化就是根据类(模版)创建一个具体的对象。
拿公司中的员工举例,“员工”是一个职位模版,每个员工都是一个实例。他们各自的姓名、邮箱、工资等,就是他们的属性,在类里面就是变量;而方法就是类中定义的函数,实现特定的功能,例如打印员工全名。
初始化类
定义员工(Employee)为一个类,属性包括姓、名、工资、邮箱:
class Employee:
def __init__(self,first,last,pay):
self.first = first
self.last = last
self.pay = pay
self.email = first + "_" + last + "@company.com"
#方法:打印全名
def fullname(self):
return '{} {}'.format(self.first,self.last)
参数 self 指的是实例本身,接收实例作为第一个参数。也可以用其他名字,但一般都默认用 self 。
实例化
emp_1 = Employee('John','Smith',50000)
emp_2 = Employee('Jane','Doe',60000)
这里实例化了两个员工,拿第一个员工举例,emp_1作为self传入,括号里的内容是该实例的属性。
打印员工一的邮箱和全名进行测试:
print(emp_1.email)
print(emp_1.fullname())
打印全名时,emp1自动作为实例传入。此外也可以用类名(Employee)调用方法,但此时缺少具体实例会报错,应当在括号里传入实例:
print(Employee.fullname(emp_1)) #等同于emp_1.fullname()
运行结果如下:
John_Smith@company.com
John Smith
469



被折叠的 条评论
为什么被折叠?



