python3类和对象

wd404 / 2023-05-28 / 原文

1、类
python中使用关键字class声明类。
在类中,可以有变量和方法。

class Stu:
    def __init__(self, name, age=15):
        self.name = name
        self.age = age
    def is_adult(self):
        if self.age >= 18:
            return True
        else:
            return False
stu = Stu('张三', 20)
print('是否成年', stu.is_adult())
"""
是否成年 True
"""

2、对象变量和类变量
在类中、方法外声明的变量为类变量,基于该类创建的对象共享类变量。
在类中、方法中声明的变量为对象变量,属于各对象私有。

对象变量一般建议在初始化方法__init__中统一声明,当然,在其他方法中声明也是可以的。
对象变量通过self,可以在类的各个方法中进行调用。

3、方法
和函数级别一致,需要注意的是,方法至少有一个参数,该参数作为对本对象自身的引用,一般命名为self,方法声明的第一个参数就是。

self是可以作为参数对象被传递的,表示本类对象。

class Stu:
    def __init__(self):
        self.name = '张三'
        printf(self)
def printf(item: Stu):
    print(item.name)
stu = Stu()
"""
张三
"""

4、类属性和方法
(1)类的私有属性
__private_attrs:两个下划线开头,声明该属性为私有,不能在类的外部被使用或直接访问。在类内部的方法中使用时 self.__private_attrs。

(2)类的私有方法
__private_method:两个下划线开头,声明该方法为私有方法,只能在类的内部调用 ,不能在类的外部调用。self.__private_methods。

(3)类的专有方法