python-面向对象-类的定义
1. python-面向对象-类的定义
-
使用class关键字定义类
class ClassName(): def funcName(self): pass 电脑(类): 特征(属性):主机,显示器,键盘,鼠标… host = "4C8G" displayer = "27寸" keyboard = "机械键盘" mouse = "无线鼠标" 功能(方法):办公,上网,看片… def office(): 办公 def internet(): 上网 def movies():s 玩游戏 …
-
类的书写规范
-
示例:定义一个电脑类
class Computer(): ''' 电脑类 ''' # 属性 def __init__(self): self.host = "4C8G" self.displayer = "27寸" self.keyboard = "机械键盘" self.mouse = "无线鼠标" # 方法 def office(self): return "办公" def internet(self): return "上网" def movies(self): return "看片"
-
类的书写规范
-
类一般采用大驼峰命名,例如MyClass
-
类注释,用于说明该类的用途,提高可阅读性
-
类中只存在两种数据:属性和方法
-
声明属性必须赋值
-
声明方法的第一个参数必须是self,其他与普通函数一样
-
一般会使用__init__方法给类指定的初始状态属性
-
-
-
类的实例化
-
通常称为
- 实例化:用类创建对象的过程
- 类实例:用类创建对象
- 实例属性:对象的属性
- 实例方法:对象调用的方法
-
类的运行结果示例
pc = Computer() # 类实例化,pc是类实例 print(pc.host) # 访问类属性,查看电脑配置 print(pc.movies()) # 访问类方法,让电脑做事
-
-
初始化函数类
-
示例1、让某个人使用电脑做事
#!/usr/bin/env python3 # _*_ coding: utf-8 _*_ # Author:shichao # File: .py class Computer(): ''' 电脑类 ''' # 属性 def __init__(self, name): self.host = "4C8G" self.displayer = "27寸" self.keyboard = "机械键盘" self.mouse = "无线鼠标" self.name = name # 方法 def office(self): return "%s在办公" % self.name def internet(self): return "%s在上网" % self.name def movies(self): return "%s在看片" % self.name zhangsan = Computer("张三") print(zhangsan.office()) lisi = Computer("李四") print(lisi.movies())
-
示例2、加减乘除
class Calc(): ''' 计算器类 ''' def __init__(self, num1, num2): self.num1 = num1 self.num2 = num2 def jia(self): return self.num1 + self.num2 def jian(self): return self.num1 - self.num2 def cheng(self): return self.num1 * self.num2 def chu(self): return self.num1 / self.num2 calc = Calc(6, 6) print(calc.jia())
-
2. python-面向对象类的案例
-
示例1、初始化函数传参
#!/usr/bin/env python3 # _*_ coding: utf-8 _*_ # Author:shichao # File: .py class Computer(): ''' 电脑类 ''' # 属性(特征) def __init__(self): # self 函数类的本身 self.host = "4核8G" self.displayer = "27寸" self.keyboard = "128键" self.mouse = "无线鼠标" # 方法(功能) def office(self): print("办公") def internet(self): return "上网" # 使用类 pc = Computer() # 调用类方法 print(pc.host) print(pc.internet())
-
示例2、初始化函数-加减乘除
class Calc(): ''' 计算器类 ''' def __init__(self, num1, num2): self.num1 = num1 self.num2 = num2 def jia(self): return self.num1 + self.num2 def jian(self): return self.num1 - self.num2 def cheng(self): return self.num1 * self.num2 def chu(self): return self.num1 / self.num2 calc = Calc(6, 6) print(calc.jia())