您的当前位置:首页正文

python中如何定义类

2020-11-27 来源:星星旅游

什么是类?

用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。

什么是方法?

类中的函数即为方法

如何定义一个类?

定义类,语法格式如下:

class ClassName:
 <statement-1>
 .
 .
 .
 <statement-N>

python中使用class关键字来定义类,类的命名规则是每个单词的首字母都要大写。

类对象

类对象支持两种操作:属性引用和实例化。

属性引用使用和 Python 中所有的属性引用一样的标准语法:obj.name。

类对象创建后,类命名空间中所有的命名都是有效属性名。所以如果类定义是这样:

class MyClass: """一个简单的类实例"""
 i = 12345
 def f(self): return 'hello world'
 # 实例化类x = MyClass()
 # 访问类的属性和方法print("MyClass 类的属性 i 为:", x.i)print("MyClass 类的方法 f 
输出为:", x.f())

以上创建了一个新的类实例并将该对象赋给局部变量 x,x 为空的对象。

执行以上程序输出结果为:

MyClass 类的属性 i 为: 12345
MyClass 类的方法 f 
输出为: hello world

类有一个名为 __init__() 的特殊方法(构造方法),该方法在类实例化时会自动调用,像下面这样:

def __init__(self):
 self.data = []

类定义了 __init__() 方法,类的实例化操作会自动调用 __init__() 方法。如下实例化类 MyClass,对应的 __init__() 方法就会被调用:

x = MyClass()

当然, __init__() 方法可以有参数,参数通过 __init__() 传递到类的实例化操作上。例如:

class Complex:
 def __init__(self, realpart, imagpart):
 self.r = realpart
 self.i = imagpart
x = Complex(3.0, -4.5)
print(x.r, x.i) # 
输出结果:3.0 -4.5