文章目录
小白自用笔记,如有错误还请指正
【1】定义类
类 = 属性 + 方法
类的名称开头字母要大写如:Point / EmailClient。且没有下划线
属性分为类属性和实例属性:简单的说 ‘类属性’ 是在类中直接写的属性,‘实例属性’ 指在类外重写的属性。
方法相当于类中的函数(详见以下示例)
class Point:
x = '2' #类属性
y = '3'
def move(self):
print("I'm moving")
def draw(self):
print("I'm drawing")
point1 = Point() #对象为point1
print(point1.x) #可对类属性做修改point1.x = 10
point1.z = 10 #实例属性
print(point1.z)
point1.draw() #调用类函数
point1 = Point() 后对象为point1它具有类Point的所有特征。
【2】构造函数
init前后分别有两个下划线,一共有四个下划线,括号里面的self是必写的一个,但是不会用到它
#示例1
class Point:
def __init__(self, x1, y1):
#构造函数,将x1赋值给x属性,将y1赋值给y属性
self.x = x1
self.y = y1
point1 =Point(10, 20)
print(f'point1的横坐标为{point1.x} 纵坐标为{point1.y}')
point1.x = 30 #也可对属性的值进行更新
#示例2
class Person:
def __init__(self, name):
self.name = name
def hello(self):
print(f"hello, my name is {self.name}")
John = Person('John Smith')
John.hello()
【3】继承
定义父类,子类调用父类,则子类不仅具有父类的属性和方法,还可自己进行添加,如不进行添加则写上pass
class Animal:
def __init__(self,name):
self.name = name
def walk(self):
print(f"{self.name} want to go outside")
class Dog(Animal):
pass
class Cat(Animal):
def sleep(self):
print("I'm sleeping")
dog1 = Dog('da huang')
dog1.walk()
cat1 = Cat('xiao bai')
cat1.sleep()
【4】dir内置函数**
【1】在python中,我们之前学习的变量,数据,函数都是对象
在Python中有两种方法验证
【1】在标识符/数据之后输入一个.然后按下tab键ipython会提示该对象可以调用的方法列表
【2】使用内置函数dir传入标识符/数据,可以查看对象内的所有属性和方法
提示:__方法名__格式的方法是python提供的内置方法/属性