面向过程与面向对象
作者:互联网
面向过程的概念
面向过程核心是过程二字, 即先干什么, 在干什么, 最后干什么 #举例 1.洗衣服 2.把大象放在冰箱里面 ''' 1.打开冰箱门 2.把大象放进去 3.关上冰箱门 ''' 3. 流水线生产饮料 优点:复杂的问题流程化,进而简单化 缺点:牵一发而动全身,扩展性差,可维护性差 应用场景:对扩展型不高的的地方, eg:安装包的使用 #注册功能 #用户输入用户名和密码(函数写代码) def interactive(): username = inupt('请输入用户名').strip() password = input('请输入密码').strip() return{ 'username':username 'password':password } #验证参数 def check_info(userinfo): is_valid = Flase if len(userinfo['username']) == 0: print('用户名不能为空') is_valid = True if len(userinfo['password']) == 0: print('密码不能为空') is_valid = True return{ 'is_valid':is_valid 'userinfo':userinfo } #写入文件注册成功 def register(param): if not param[is_valid]: with open('usrinfo.txt','w', enconding = 'utf8')as f: import json json_dump(param['userinfo'], f) #调用函数 def main() userinfo = interactive() 检验参数 check_info = check_info(userinfo) #注册调用 register(check_param) if__name__ == ('__main__'): main() 扩展性差指的是加入一个功能后 全改变局都要改变去应变这个
面向对象
面向对象的核心是对象二字 什么是对象? 1.陈序中: 函数:盛放数据的容器 2 对象:盛放数据和函数的容器 2.现实生活中 一切皆对象 对象:特征与技能的结合体 优点:扩展性强,可维护性强 缺点:编程复杂度高 应用场景:对扩展性要求较高的地方. #举例 以学生选课系统为例 版本三 def choose_course(stu_dict,course): stu_dict['course'].append(course) print('%S选课成功 %' % (stu_dict['name'],stu_dict['course'])) stu1{ 'name':'jason', 'age':18, 'gender':'male', 'choose_course':'choose_corse' } stu2{ 'name':'jason', 'age':18, 'gender':'male', 'choose_course':'choose_corse' } stu1['choose_course'](stu1,'python') stu2['choose_course'](stu2,'python')
标签:course,面向,扩展性,面向对象,valid,choose,过程,def,userinfo 来源: https://www.cnblogs.com/fkzxps/p/15635072.html