精通 Python 中的实例变量:入门指南

360影视 动漫周边 2025-03-13 10:57 2

摘要:实例变量是属于类的一个实例的变量。从类中创建的每个对象都有这些变量的独立副本。与所有实例共享的类变量不同,实例变量为每个对象存储独特的数据。

实例变量是属于类的一个实例的变量。从类中创建的每个对象都有这些变量的独立副本。与所有实例共享的类变量不同,实例变量为每个对象存储独特的数据。

想想看:如果你我和你一起报名参加一个在线 Python 课程,我们每个人都有自己的登录凭证。课程(班级)是相同的,但我们的用户名(实例变量)是唯一的!

要定义实例变量,你需要在类内部使用self关键字。让我们看看一个简单的例子:

class Student: def __init__(self, name, age): self.name = name # Instance variable self.age = age # Instance variable# Creating instancesstudent1 = Student("Harish", 20)student2 = Student("Chandru", 22)print(student1.name) # Output: Harishprint(student2.age) # Output: 22

在这个例子中,`name` 和 `age` 是实例变量。每个 `Student` 对象都有自己对这些变量的值。

实例变量存储在对象的 __dict__ 属性中。您可以使用以下方法进行检查:

print(student1.__dict__)

这将输出:

{'name': 'Harish', 'age': 20}

每个实例都有自己的 __dict__,仅存储其特定数据。

特性实例变量 类变量 在 __init__ 方法内定义 在 __init__ 方法外定义 属于单个实例 整个类 更改仅影响单个实例 影响所有实例

类变量示例:

class Course: category = "Programming" # Class variable def __init__(self, name): self.name = name # Instance variablecourse1 = Course("Python Basics")course2 = Course("Java Basics")print(course1.category) # Output: Programmingprint(course2.category) # Output: Programming

您可以像这样修改特定对象的实例变量:

student1.age = 21 # Changing Harish's ageprint(student1.age) # Output: 21

这次更改不会影响其他实例,例如 学生 2。

要了解更多关于访问和修改实例变量的信息,请查看PYnative。

print(student1.grade) # AttributeError: 'Student' object has no attribute 'grade'student1.grade = "A"print(student1.grade) # Output: Adel student1.ageprint(student1.age) # Raises AttributeError

来源:自由坦荡的湖泊AI

相关推荐