在基本使用里面的实例中,MyClass类中的成员变量messages是类成员变量,即MyClass类和所有MyClass对象共享该成员变量。如果需要定义属于每个对象自己的成员变量,需要在构造函数中定义self引用中的变量,这样的成员变量在Python中叫做实例成员变量。

实例:

# 定义一个类
class MyClass(object):
    message = "这是一个成员变量!"  # 成员变量message

    def __init__(self, name="Java", result="hello world!"):
        self.name = name  # 定义成员变量
        self.result = result  # 定义成员变量
        print("这是一个%s构造函数!我想让它输出:%s" % (name, result))

    def __del__(self):
        print("这是一个析构函数!")

    # 定义成员函数
    def show(self):
        print(self.message)
        print("我想让这个%s函数输出%s" % (self.name, self.result))


def main():
    inst01 = MyClass("Python")  # 实例化一个对象,传入1个参数
    inst01.show()  # 使用实例化的对象调用成员函数
    inst02 = MyClass("Python", "hello Python!")  # 实例化一个对象,传入2个参数
    inst02.show()
    inst03 = MyClass(result="hello Python!", name="Python")  # 实例化一个对象,传入指定参数
    inst03.show()

    print(inst01.name)
    print(inst02.result)

    del inst02


if __name__ == '__main__':
    main()

以上代码输出结果为:

这是一个Python构造函数!我想让它输出:hello world!
这是一个成员变量!
我想让这个Python函数输出hello world!
这是一个Python构造函数!我想让它输出:hello Python!
这是一个成员变量!
我想让这个Python函数输出hello Python!
这是一个Python构造函数!我想让它输出:hello Python!
这是一个成员变量!
我想让这个Python函数输出hello Python!
Python
hello Python!
这是一个析构函数!
这是一个析构函数!
这是一个析构函数!

以上代码中,在构造函数__init __()中定义了两个实例成员变量:self.name和self.result,在MyClass的成员函数中可以直接使用这两个成员变量,通过实例名也可以访问到实例成员变量(inst01.name,inst02.result)。

0条评论

相关推荐

Python函数

在编程中使用函数可以写出优雅的程序结构,模块化的结构使程序简单化,并提高了...

入门教程 2019-05-20 15:12:29

Python综述

Python是一种可以撰写跨平台应用程序的面向对象程序设计语言,它具有卓越...

入门教程 2019-05-21 09:33:16

Python异常

异常处理是编程语言中的一种机制,用于处理软件或信息系统中出现的异常状况(即...

入门教程 2019-05-20 17:20:26

Python基本数据类型

顾名思义,计算机就是用来处理各种各样的数据的机器,这些数据可能包括:数字,...

入门教程 2019-05-17 14:51:54

流程控制

流程控制语句用来实现对程序流程的选择、循环和返回等进行控制。Python中...

入门教程 2019-05-20 11:17:04