doy14总结

编程思想
'''
面向过程编程
面向对象编程
函数是编程
'''

认识类和对象

'''
类----拥有相同功能和相同属性的对象的集合
对象----类的实例
类的申明;
Python中所有的数据类型本质上都是类,没这种类型对应的数据都是对象。
申明类本质就是自定义类型

申明类的语法:
class 类名:
类的内容

class 关键字,类名自己命名,标识符,见名知意,首字母大写,多个单词的话,后面每个

单词首字母都大写(驼峰式命名)

类的内容,主要包含类的说明文档,属性,方法(功能);方法就申明在类中的函数。

'''

创建对象

'''
对象是通过类来创建
语法:
类()
'''

类中的方法,其实就是申明在类中的函数

类中方法分为3种 ,分别是对象方法,类方法,静态方法

对象方法---直接申明在类中的函数就是对象方法,有个默认参数self,需要使用对象.的方式来调用

对象方法中的self,在通过对象调用的时候,不用传参,系统会自动将当前对象传给它。那个对象调用

的当前方法,self就是谁。self 本质是当前类的对象

'''
python 所有类中都有一个特殊的对象方法:init
当通过类去创建对象的时候,系统会自动调用init方法,来对对象进行初始化操作(*)。
补充:Python中以“”开头以“”结尾的叫魔法方法,
所有魔法方法不需要程序员手动调用,系统会在需要的情况下自动调用
'''

构造方法

'''
函数名和类名一样的方法就是构造方法。
在python 中当我们申明类的时候,系统会自动给我们创建这一类的构造方法
方法中先是在内存中开辟空间创建对象,
然后用创建好的对象去调用init方法对对象进行初始化,初始化完成后将对象返回。
创建对象是需不需要参数,需要几个参数,看init 方法(*)。
'''

'''
属性:类的字段,对象属性
1,类的字段
a ,申明:直接申明在类中变量就是类的字段
b,通过类的方式去使用
c,什么时候用:属性的值不会因为对象的不同而不同,就使用类的字段
2,对象属性
a 申明: 申明在init 方法中,以 “self.属性=值 ”的方式来申明
b,怎么使用:通过“ 对象. ”的方式使用
c.什么时候用:属性的值会因为对象不同而不同就会使用对象属性。
'''
class Dog:
'''动物狗,类的属性:名字,年龄,颜色,品种'''
def init(self,name1,color1,age1=0):
self.name=name1
self.age=age1
self.color=color1
self.type='无'
def eat(self,food:str):
print('%s在吃%s')

对象属性的操作

class Student:
def init(self,name,age=18):
self.name=name1
self.age=age1
self.stu_id='001'
'''
1,查---获取对象属性的值
a,点语法:对象.属性---获取对象属性的值,属性不存在会报错
b,getattr(对象,属性名)---获取对象属性的值,属性不存在会报错
getattr(对象,属性名,默认值)---获取对象属性的值,属性不存在不会报错,并且返回默认值
'''

增加或改

'''
a 对象.属性=值 ----当属性存在时,修改属性的值,当属性不存在时,添加属性的值
b, setattr(对象,属性,值)--当属性存在时,修改属性的值,当属性不存在值,修改属性的值
'''

删除

'''
a del 对象.属性
b,delattr(对象,属性名)'''

注意:属性的增删改查只针对操作的对象。

solts魔法

'''
'''

内之内属性,申明类的时候系统自动给类添加的属性。

'''
1, name 获取类的名字
2,doc 获取类的说明文档
3,class 获取对象的类型
4,dict 获取当前类中所有的字段对应的值以字典的形式返回。
对象属性,获取当前对象中所有对象属性和对应的值
5,module 获取当前类(申明在哪里)的模块的名字
6,bases 获取当前类的所有父类'''

你可能感兴趣的:(doy14总结)