通过示例揭开Python类变量和实例变量的神秘面纱

云课堂学Python 2024-04-07 00:50:05

Python 为面向对象编程 (OOP) 提供了一组丰富的功能。Python 中 OOP 的两个基本方面是类变量和实例变量。了解这些变量的差异和用法对于编写干净高效的 Python 代码至关重要。在本文中,我们将探讨 Python 的类变量和实例变量,并通过示例来说明它们的使用方法。

Python 类变量

类变量,在某些编程语言中也称为静态变量,在类的所有实例之间共享。这些变量在类中实例和方法之外定义。它们存储整个类共有的数据。

class Teacher: #变量 School = '北京大学' def __init__(self, name, age, profession): self.name = name self.age = age self.profession = profession#创建对象 li = Teacher('李老师', '30', '语文')wu = Teacher('吴老师', '33', '数学')#调用print('学校:', li.School)print('学校:', wu.School)

输出:

学校: 北京大学学校: 北京大学

在此示例中,“School”变量是一个类变量,由“Teacher”类的所有实例共享。

Python 实例变量

实例变量对于类的每个实例都是唯一的。它们在类的构造函数“__init__”中定义,并存储因实例而异的数据。

class Teacher: def __init__(self, name, age, profession): self.name = name # 实例变量 self.age = age # 实例变量#创建对象 li = Teacher('李老师', '30', '语文')wu = Teacher('吴老师', '33', '数学')#调用print(li.name)print(wu.age)

输出:

李老师33

在这种情况下,每个 Teacher 实例都有自己的 “name” 和 “age” 实例变量,允许我们存储和访问每个 Teacher 对象的唯一信息。

类变量和实例变量的区别

「作用域」

类变量在类的所有实例之间共享。实例变量对于类的每个实例都是唯一的。

「修改」

类变量可以通过类本身或任何实例进行修改。更改会影响所有实例。实例变量特定于它们所属的实例。更改不会影响其他实例。

「用法」

类变量可用于存储所有实例通用的信息,例如常量或配置设置。实例变量用于存储因实例而异的数据,表示每个对象的独特特征。

Python 类变量和实例变量是面向对象编程(OOP)的重要组成部分。类变量存储所有实例之间共享的数据,而实例变量存储每个实例唯一的数据。了解何时使用类变量和实例变量对于编写可维护且高效的 Python 代码至关重要。

文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈。

0 阅读:0

云课堂学Python

简介:感谢大家的关注