Python类与对象:面向对象编程入门指南

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

Python中的面向对象编程

面向对象编程(OOP)是现代编程中最重要的编程范式之一。Python全面支持OOP,使其成为初学者和专业开发者的强大工具。

OOP有助于模拟现实世界,提高代码可读性,实现组件复用,并有效管理项目复杂度。面向对象编程的核心概念包括类与对象,以及三大基本原则:继承、封装和多态。

这种编程方法将程序结构化为相互交互的对象集合,每个对象都是特定类的实例。这使得代码更加模块化、易于理解和维护。

Python类与对象基础

类与对象的定义

类是创建对象的模板或蓝图。它定义了该类所有对象共有的数据结构和行为方法。

对象是类的具体实例,拥有自己的数据,并能执行类中定义的操作。

class Car:
    def drive(self):
        print("汽车开动了")

my_car = Car()  # 对象(类的实例)
my_car.drive()

在上述代码中,Car类定义了创建汽车对象的模板。drive()方法描述了该类所有实例可用的行为。

Python类的结构

Python中类的基本结构如下:

class ClassName:
    def __init__(self, 参数):
        self.属性 = 值
    
    def 方法(self):
        操作

类的重要组件包括:

  • __init__ — 类的构造函数,在创建新对象时自动调用
  • self — 特殊参数,表示当前对象实例的引用
  • 属性 — 存储对象数据的变量
  • 方法 — 在类内部定义并与对象关联的函数

创建和使用类

类的实际创建示例

我们来看一个创建Person类的例子,该类模拟人的行为:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def greet(self):
        print(f"你好,我叫{self.name}")
    
    def get_info(self):
        return f"姓名:{self.name},年龄:{self.age}"

p = Person("安娜", 30)
p.greet()
print(p.get_info())

在这个例子中,__init__构造函数接收name和age参数,并将其保存为实例属性。greet()和get_info()方法提供了操作对象数据的功能。

创建类的实例

在Python中,创建类的实例是通过像调用函数一样调用类来完成的:

p1 = Person("小明", 25)
p2 = Person("小红", 28)

print(p1.name)  # 小明
print(p1.age)   # 25
print(p2.name)  # 小红

每次调用类的构造函数都会创建一个新的独立对象,拥有自己的属性和状态。

Python类中的属性

实例属性

实例属性是每个对象独有的。它们在__init__方法中创建和初始化,并可在程序运行过程中修改:

class Student:
    def __init__(self, name, grade):
        self.name = name
        self.grade = grade
    
    def update_grade(self, new_grade):

博客

书籍推荐