本节将介绍Python中类和对象的基础知识,这是面向对象编程的核心概念。
在Python中,我们使用class关键字来定义类。下面是一个简单的聊天机器人类的例子:
class ChatBot:
"""聊天机器人类"""
def __init__(self, name: str):
self.name = name
self.history = []
def say_hello(self) -> str:
return f"你好,我是{self.name}!"
def remember(self, message: str):
self.history.append(message)让我们来分析这个类的结构:
- 类名:
ChatBot使用大驼峰命名法 - 文档字符串:类的说明文档
- 构造方法:
__init__用于初始化对象 - 实例属性:
name和history - 实例方法:
say_hello和remember
# 创建ChatBot实例
bot = ChatBot("小助手")
# 调用实例方法
print(bot.say_hello()) # 输出:你好,我是小助手!
# 使用实例属性
bot.remember("你好啊")
print(bot.history) # 输出:['你好啊']Python使用命名约定来实现属性和方法的访问控制:
- 公有成员:直接命名
- 私有成员:使用双下划线前缀
__ - 保护成员:使用单下划线前缀
_
class Account:
def __init__(self, owner: str, balance: float):
self.owner = owner # 公有属性
self._type = "savings" # 保护属性
self.__balance = balance # 私有属性
def get_balance(self) -> float:
return self.__balance