0x01 创建和使用类
创建一个类
感觉大同小异吧
#pig.py
class Pig():
"""模拟懒🐖的尝试"""
def __init__(self, name, age):
"""初始化属性name和age"""
self.name = name
self.age = age
def sleep(self):
"""模拟懒🐖睡觉"""
print(self.name + " is sleeping")
def eat(self):
"""模拟懒🐖吃东西"""
print(self.name + " is eating")
值得注意的是, 不要把 形参self忘记哦
创建一个实列
这一部分没什么好讲的,
0x02 继承
子类的方法__init__
class Pig():
def __init__(self, name, age):
class FatPig(PIg):
def __init__(self, name, age):
super().__init__(name, age)
self.sex = 'male' #子类特有的
重写
和别的语言差不多,就不讲了
将实例用作属性
感觉就是C++里面的组合,就是把另一个类作为自己的属性
class SleepTime():
#....
class Pig():
def __init__(self, name, age):
#..
self.sleeptime = SleepTime()
0x03 导入类
和导入模块差不多
导入单个类
from One_Py_File import OnePyClass
导入多个类
from One_Py_File import OnePyClass, TwoPyClass
导入整个模块
import One_Py_File #这样导入使用函数或者类的时候记得加“.”
导入模块中的所有类
from xx import * #这种偷懒的做法是不好的,可能带来冲突
在一个模块中导入另一个模块
# 一个模块 a.py
class xx():
#..
#另一个模块 b.py
from a import xx
class yy():
#另另一个模块 c.py
from a import xxx
from b import b