友链提交
请认真填写以下信息,谢谢!

博客信息

HoshinoAi
(请填写完整的网址,例如:https://www.example.com)
(贵站展示本站链接的页面地址,一般是友链页面,填写后将自动验证友链关系有效性)
(用于抓取文章)
(用于接收通知)
菜单
本页目录

一、类和对象

1.1 类(Class)与对象(Object)的定义

在Python中,类(Class)和对象(Object)是面向对象编程(OOP)的核心概念。

类(Class)

  • 类是对象的蓝图或原型。它为对象提供了创建的方法。
  • 类定义了对象的属性(数据)和行为(方法)。
  • 类是抽象的,它不占用内存,直到被实例化为一个对象。

对象(Object)

  • 对象是类的实例。当你创建一个对象时,你就是在类的基础上创建了一个具体的实例。
  • 对象具有属性(数据)和方法(行为)。

1.2 类与对象案例解读

在 Python 程序中,把具有相同属性和方法的对象归为一个类,例如可以将人类、动物 和植物看作是不同的“类”。在使用类之前,必须先定义这个类。

1.2.1 类的实现

知识点(定义类)

class ClassName:
	'''语句'''
  • class:定义类的关键字
  • ClassName:类的名称,Python 语言规定,类的首字母大写。

在 Python 程序中,类只有被实例化后才能够使用。类实例化以后会生成该类的一个实例,一个类 可以实例化成多个实例,实例与实例之间不会相互影响,类实例化以后就可以直接使用了。

代码实现(打印班级)

# 打印班级名称
class Mycalss:								#定义类myclass
	"""这是一个类"""							#类的说明(通过多行注释)
	def pp(self):							#定义类方法pp()
		print("我在奥兰熊Python基础1班上课")	#方法pp的功能(要做的事情)

myclass = Myclass()							#实例化类Myclass
myclass.pp()								#调用Myclass类中的方法pp()打印文本方法

代码实现(银行账户)

这是一个"银行账户”的类的案例,以下是类的简单属性和方法:

  • 属性
    • account_number:账户号码
    • balance:账户余额
  • 方法:
    • deposit:存入金额
    • withdraw:取出金额
    • get_balance:获取当前余额
# 银行账户”的类
class BankAccount:
    """银行账户类"""
    
    def __init__(self, account_number, initial_balance=0):
        """构造方法,初始化账户号码和余额"""
        self.__account_number = account_number
        self.__balance = initial_balance
    
    def deposit(self, amount):
        """存入金额"""
        if amount > 0:
            self.__balance += amount
            print(f"存入 {amount} 元。")
        else:
            print("存入金额必须大于0。")
    
    def withdraw(self, amount):
        """取出金额"""
        if amount > 0 and amount <= self.__balance:
            self.__balance -= amount
            print(f"取出 {amount} 元。")
        elif amount > self.__balance:
            print("余额不足。")
        else:
            print("取款金额必须大于0。")
    
    def get_balance(self):
        """获取当前余额"""
        return self.__balance
    
    def __str__(self):
        """返回账户的字符串表示"""
        return f"账户号码:{self.__account_number}, 余额:{self.__balance} 元。"

# 创建银行账户对象
account = BankAccount('123456789')

# 存入1000元
account.deposit(1000)

# 取出500元
account.withdraw(500)

# 打印当前余额
print(f"当前余额:{account.get_balance()} 元。")

# 打印账户信息
print(account)