面对过程编程
分析解决问题所需要的步骤, 用函数将这些步骤一步一步实现, 使用的时候一个个调用就可以了
优点: 复杂的问题流程化, 进而简单化
缺点: 扩展性差
面向对象编程
面向对象就是把事务分解成各个对象, 建立对象的目的不是为了完成一个步骤, 而是为了描述某个事务在整个解决问题的步骤中的行为
优点: 可扩展性强
缺点: 编程的复杂度要高于面向过程
类
类就是**用来描述具有相同的属性和方法的对象的集合. **它定义了该集合中每个对象所共有的属性和方法. 对象就是类的实例
定义类
class OldboyStudent():
school = 'oldboy'
def choose_course(self):
print('is choosing course')
对象
对象是属性与方法的结合体
定义对象
调用类即可产生对象, 调用类的过程. 又称为类的实例化, 实例化的结果称为类的对象/实例
stu1 = OldboyStudent()
print(stu1.school)
定制对象独有特征
class OldboyStudent():
school = 'oldboy'
def __init__(self, name, height, weight):
self.name = name
self.height = height
self.weight = weight
def choose_course(self):
print('is choosing course')
stu1 = OldboyStudent('bibg', 172, 60)
print(stu1.name)
print(stu1.weight)
print(stu1.height)