本文为原创,查询了官方文档(3.10.11),也参考了链接,感谢链接的作者!
Python
是一个面向对象的语言,C/C++
是面向过程的语言,所有,使用Python
,必须
类(Class
),在日常中,类,就是一个大类,比如,食物的类:
代码:(有高级内容,稍后讲解)
class Food: # 没必要继承object
# 类文档,可以使用__doc__方法导出
'''
This Food class.
'''
def __init__(self, name='Food', type='Food', price=0):
self.name = name
self.type = type
self.price = price
self.run() # 调用run
def run(self):
print((self.name, self.type, self.price))
class Apple(Food):
'''
It's Apple.
'''
def __init__(self):
super().__init__()
self.name = 'Apple' # 填写父类属性,类似链接https://blog.csdn.net/qq_48979387/article/details/128994501 的填写属性,感兴趣的可以看看网页
self.type = 'Fruit'
self.price = 5
def run(self): # 重写,类似链接https://blog.csdn.net/qq_48979387/article/details/128994501 的“精灵”类的update方法,感兴趣的可以看看源代码
print('is' + self.name)
print(Food().__doc__) # 输出Food类的文档
apple = Apple()
apple.run() # 运行Apple类里重写的run
代码里面有一些知识点;注意一下注释的地方:
super().__init__()
可以对其进行初始化,否则无法使用;继承可以使你享受到父类的方法、变量classname.__doc__()
导出*Apple
类填写了父类Food
的所有属性update
方法就是重写了模块里默认的update
方法,这个比较重要类的定义非常简单,类似使用def
定义函数;定义类用class
关键字: