携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第21天,点击查看活动详情
0 环境
- 编辑器:pycharm或者vscode
- 系统版本:windows10
- python版本:3.9.6
1 定义类
之前说类怎么有特点,怎么迷人,唯有见过,方知好不好,如下代码。
定义了一个类,类名叫Phone,在类里面定义了__init__,还可以传入一些入参,它是用来初始化的。怎么调用该类呢,main下面的Phone(xxx),phone.xxx这种是不是挺方便的。而且我要替换该状态的话,直接phone.status = "close",再次打印phone.status,结果如下第二张图。
class Phone:
def __init__(self, status, brand):
self.status = status
self.brand = brand
if __name__ == '__main__':
phone = Phone("open", "apple")
print(phone.status)
print(phone.brand)
对照上面这个案例,首先类的定义,如下:
- 使用class关键字来定义一个类,并在它的后面取个自己心仪的类名。
- 在该类名的后面,在加个分好,换行(记得这里假如换行和 class关键字并列了,请按一下Tab键或者手敲空格)下面就是语句块。
class 类名:
语句块
现在类是定义好了,类里面还有函数,这里的函数是什么类型的函数呢,__init__它的入参self,可以访问对象属性,这块常用到,现在忽略,之后在细说,先忽略self,只要知道我将入参里的值,赋值给self相对应的对象属性即可。让我们再来看看,类名(xx)它赋值的变量,打印出来会返回什么,如下代码和图:
我定义了Demo类和demo1函数,当我们引用了它两后,并打印它们,是不是和函数调用很像。
class Demo:
pass
def demo1():
pass
if __name__ == '__main__':
demo = Demo()
print(demo)
print(demo1)
2 总结
了解了类定义的基本格式,以及编写时,注意类和语句块的空格的问题等,并且写了一个类案例,还有就是类的调用和函数调用有点类似。