Day5-1 面向对象和面向过程
Posted 大橡皮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Day5-1 面向对象和面向过程相关的知识,希望对你有一定的参考价值。
摘要:
类的定义
类的增删改查
面向对象和面向过程的区别:
1.面向过程就像是工厂的流水线,按部就班的有序的工作.
优点:把复杂的问题简单化
缺点:可扩展性差.一个步骤改动,其他的步骤几乎都要跟着改动.
适用:功能一旦实现之后就很少需要改变的场景.
2.面向对象:
2-1 什么是对象?
对象的具有一些特征和方法的集合.比如孙悟空是一个对象,他的特征是 毛脸雷公嘴,金箍棒,金箍圈.他的方法(技能)七十二变,火眼金睛.
优点:可扩展性强
缺点:编程复杂度高.
适用:互联网应用,企业应用,游戏.
类:是一系列对象相似的特征与技能的结合体
在不同的角度,获取的类是不一样的.比如在生物类的角度看,人,花草树木都是一类的,归于生物类.在人类的角度,人类是单独的类别,花草树木是植物类.
那么是先对有对象还是现有类?
在现实世界中:现有对象,再有类.
在程序中:要先定义类,再通过调用类产生对象.
类与函数的区别:
函数只有在被调用的时候,才会产生一个局部名称空间来存放函数体中的变量.
类一旦定义好了,就会产生一个局部名称空间来存放类体中的变量
类的定义和增删改查:
1 #在程序中:先定义类 2 class Luffycity(): 3 school = "路飞学城" # 这个叫数据属性 4 5 def eat(self): # 函数属性 6 print("is eating") 7 8 def sleep(self): 9 print("is sleeping") 10 11 def learn(self): 12 print("is learning") 13 14 # 查看类的名称空间: 15 print(Luffycity.__dict__) 16 # 查看类的名称空间中变量或者函数 17 print(Luffycity.__dict__["school"]) 18 print(Luffycity.__dict__["learn"]) 19 print(Luffycity.__dict__["eat"]) 20 # 下面的语句等同于上面的查看方法 21 print(Luffycity.school) 22 print(Luffycity.learn) 23 print(Luffycity.eat) 24 # 增加一个类,比如增加一个country = china 25 Luffycity.country ="china" 26 print(Luffycity.country) 27 28 # 删除一个类数据类型 29 del Luffycity.country 30 print(Luffycity.__dict__) 31 32 # 修改,把路飞学城修改成luffycity 33 Luffycity.school = "luffycity" 34 print(Luffycity.school)
以上是关于Day5-1 面向对象和面向过程的主要内容,如果未能解决你的问题,请参考以下文章