python 定义class
时间: 2023-05-04 15:04:15 浏览: 87
Python中定义class(类)的关键字为class,其后需要紧跟着类名,并使用冒号(:)表示类定义的开始。紧接着类名的下一行通常是类的说明(docstring)。
在类定义中,可以定义类的属性和方法。属性即类的变量,可以是类变量(在所有实例中共享)或实例变量(每个实例单独拥有)。方法即类的函数,可以是类方法(与类绑定,可以通过类名调用)或实例方法(与实例绑定,只能通过实例调用)。
实现一个最基本的类,需要在类的定义中实现__init__(构造函数)方法。__init__方法用于初始化类实例的属性。在__init__方法中,需要定义一个self参数,它在类的实例化过程中被自动传递,并代表实例本身。通过self可以实现对实例变量的访问。
为了方便类外部使用类的方法,Python提供了@property修饰符,它可以将一个方法转换成一个只读属性,这样外部代码就可以通过调用属性的方式访问方法的返回值了。
例如,实现一个简单的人类(Person)类:
```python
class Person:
def __init__(self, name):
self.name = name
@property
def hello(self):
return f"Hello, my name is {self.name}."
```
上述代码定义了一个Person类,其中__init__方法用于初始化Person实例的name属性,hello方法用于返回Person实例的问候语。使用@property修饰符将hello方法转换成了只读属性。这样,就可以通过以下方式使用这个类:
```python
p = Person("Tom")
print(p.hello) # 输出 "Hello, my name is Tom."
```
阅读全文