面向对象的思想:如提起人想起的是人这一类事物,而人就是一个class类比如说小明就是一个具体的对象。人所具有的共同的特征就是属性,人可以做什么就是这个类中所做的行为如下:
# 创建一个class类
class people(object):
def __init__(self, name, age, sex, height):
self.name = name # 一个人所具有的属性:姓名
self.age = age # 年龄
self.sex = sex # 性别
self.height = height # 身高
# .......还有很多就不一一举例了都是一个人的特征
# 一个人的行为可以理解为这个对象可以做些什么 也叫方法
# 未成年不得进入网吧
def internet(self):
if self.age > 18:
print('你已经成年可以进入网吧,欢迎光临')
else:
print('未成年不得入内')
# 还可以有多种行为就不一一举例了
# 在其他的.py文件中可以使用
import .py文件名
# 来进行导入
# 创建一个实例对象的语法是
对象变量名 = 类名()
self代表的是当前对象和Java中的this作用差不多 哪个对象调用了方法,方法里的self指的就是谁
面向对象的魔法方法又叫魔术方法
__init__()这个方法是在创建对象是就会自动调用不需要人为的手动调用
__str__()这个方法主要用于直接使用print(对象变量名)可以通过这个方法的改写来正常打印输出内容否则的话他输出的是__main__.类名 object at 内存地址
__del__()这个方法是在程序结束是自动执行的用来删除对象,当然手动调用也是可以的如 del 对象名 来进行删除对象的
__rerp__()这个方法和str的应用一样只是str注重的是可读性而rerp注重的是正确性
__call__()这个方法是对象名()来进行执行的
面向对象的运算符
有两对象p1和p2 内容相同
p1 == p2 结果是False
它内部调用的是__eq__()方法来进行比较的如果进行重写的话那么可以返回两对象的内容比较结果
今天就到这里结束明天继续