题目 | Python对象的定义 | Python对象属性 |
---|---|---|
1. Python对象的定义 | Python中的对象是类的实例。在Python中,一切皆对象,这意味着无论是数字、字符串,还是复杂的程序结构,都可以被视为对象。每个对象都有其自己的属性和方法,用于描述其状态和操作。例如,一个Person 类的对象可以拥有name 、age 等属性,以及say_hello 等方法。 |
|
2. 创建对象 | 要创建一个对象,首先需要定义一个类,然后使用类名来创建类的实例。例如: ```python |
class Person:
def init(self, name, age):
self.name name
self.age age
person1 Person("Alice", 30)
``在这个例子中,
Person是一个类,
person1是通过
Person`类创建的对象。 |
| 3. 属性的访问 | 对象的属性可以通过点号(.
)操作符来访问。例如,访问person1
的name
属性: ```python
print(person1.name) 输出: Alice
``` |
| 4. 属性的设置 | 类似地,可以使用点号操作符来设置对象的属性值。例如,设置person1
的age
属性: ```python
person1.age 31
``` |
| 5. 隐藏属性 | 在Python中,属性可以是私有的,这意味着它们以双下划线开始和结束(如__name
)。这些属性通常用于内部实现,不希望外部直接访问。例如: ```python
class Person:
def init(self, name, age):
self.__name name 私有属性
self.age age
def get_name(self):
return self.__name
person1 Person("Bob", 25)
print(person1.get_name()) 输出: Bob
print(person1.__name) 将引发AttributeError,因为属性是私有的
``` |
| 6. 动态属性 | Python允许在运行时动态地给对象添加属性。例如: ```python person1.location "New York"
print(person1.location) 输出: New York
``` |
| 7. 属性的命名空间 | 对象的属性实际上是存储在对象的命名空间中的。每个对象都有一个字典来存储其属性,这个字典通常被称为__dict__
。例如: ```python
print(person1.dict) 输出: {'__name': 'Bob', 'age': 25, 'location': 'New York'}
``` |
| 8. 属性的继承 | 当一个对象是另一个类的实例时,它继承了这个类的属性和方法。例如,如果一个Employee
类继承自Person
类,那么Employee
对象将自动拥有Person
类的所有属性和方法。 |