Python中类的使用1

Python中类的是把数据和功能集合在一起的一种数据类型。

1 类的定义

定义类的语法格式如下所示:

class ClassName:
    
    ...
    

其中,class是定义类的关键字,ClassName表示类名,之后是冒号,然后在定义类的范围内statement-1到statement-N表示定义类的语句,里面包含了类的数据和功能。

2 类的数据与功能

类的主要特性是把数据和功能集成在一起,这里的数据就是类的变量,而功能就是类的方法。Python类的变量和方法主要分为两种:一种是类的变量和方法,另一种是实例的变量和方法。

2.1 类的变量与方法

定义一个名为MyClass的类,代码如下所示:

class MyClass:
    i = 1
    def myfunc():
        print('Hello')

从以上代码可以看出,MyClass类包含一个类变量i和一个类方法myfunc。在调用时需要使用“类名.变量名”或者“类名.方法名”的方式,代码如下所示。

print(MyClass.i)
MyClass.myfunc()

运行程序,可以输出“1”和“Hello”。

可以通过“类名.变量名”的方式修改类的变量,代码如下所示:

MyClass.i = 2
print(MyClass.i)

此时的输出是“2”。

2.2 实例的变量与方法

类是一种数据类型,可以定义该类(数据类型)的多个变量,定义类的变量的过程叫做“实例化”,定义的类变量叫做“实例”。

c1 = MyClass()

此时,c1就是MyClass类的一个实例。可以通过定义MyClass类的__init__()方法对不同的类进行不同的初始化操作。

class MyClass:
    i = 1
    def myfunc():
        print('Hello')
    def __init__(self, num):
        self.j = num

从以上代码可知,MyClas增加了一个名为__init__()的方法,该方法有两个参数,一个是self,表示调用该方法的实例对象,另外一个参数是num,该参数在调用__init__()函数时传入。

在定义类的实例时,会自动调用该类的__init__()方法,而创建的变量作为该函数的第一个参数,即参数self的值,类名后的括号中的参数为__init__()方法的其他参数值。代码如下所示:

c1 = MyClass(10)

以上代码定义了MyClass类的一个实例,在使用该代码创建实例时,自动调用了MyClass类的__init__()函数,此时__init__()函数的参数self的值是“c1”,参数num的值是“10”。执行MyClass类的__init__()方法,将实例c1的变量j的值设置为10。使用实例变量的格式是“实例名.变量名”,执行如下代码:

print(c1.j)

输出结果为“10”。MyClass类定义中的变量j是“实例变量”,对于“实例变量”,不同的实例,可以拥有不同的值。例如:

c2 = MyClass(100)

此时,c2也是MyClass的一个实例,执行如下代码:

print(c2.j)

输出的结果为“100”。

你可能感兴趣的:(Python基础学习,python,类定义,self,类的实例,init)