python类

类的定义

python类主要包含类变量、类方法、实例变量,定义格式如下:

class demo:  # 定义一个demo类
    name = 'default_name'  # name为类变量

    def print_name(self):  # 类方法
    print(self.name)

    def set_age(self, age):  # 类方法
        self.age = age  # age为实例变量

    def print_age(self):  # 类方法
        print(self.age)

类变量:在类中定义好的变量,例如上面的name
类方法:在类中定义的方法,例如上面的print_name()、set_age()、print_age()
实例变量:对实例对象的变量赋值就会创建一个新的实例变量,例如上面的age

注意示例代码中的self,类似于C++的类的this指针,类中的函数称为实例方法,所有实例方法的第一个参数都会被绑定到方法的调用者(该类的实例对象),因此所有实例方法第一个参数必须有self,当然,第一个参数不一定要是self,可以改成任何你想要的变量名,不过self是约定俗成的习惯。

self指向实例对象本身,如果不用self.name的形式,只会新建一个name变量。

构造方法
特殊的一种方法,类似于C++的构造函数,init(init前后分别两个下划线),用于初始化新创建的类实例。

私有变量和方法

私有变量(方法)只需要在类名(方法名)前面加上双下划线即可。但是,python中的私有变量并非一定不可在外部访问,只需要用对象名._类名私有变量名的形式访问即可。

class demo:  # 定义一个demo类
    __name = 'default_name'  # name为私有变量


temp = demo()
# print(temp.__name)  # 此处打印报错
print(temp._demo__name)  # 此处可以打印
参考资料
  1. Python class定义类,Python类的定义(入门必读)
  2. Python:为什么类中的私有属性可以在外部赋值并访问?

你可能感兴趣的:(#,Python)