对象属性赋值给另一个对象
时间: 2023-07-19 09:25:51 浏览: 105
可以使用对象的浅拷贝或深拷贝来实现将对象属性赋值给另一个对象。浅拷贝只会复制对象的一层属性,而深拷贝会递归复制对象的所有嵌套属性。
示例代码如下:
```python
import copy
# 定义一个对象
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
# 创建一个对象实例
person1 = Person('Tom', 18)
# 浅拷贝对象
person2 = copy.copy(person1)
# 深拷贝对象
person3 = copy.deepcopy(person1)
# 修改 person1 的属性
person1.name = 'Jerry'
person1.age = 20
# 打印三个对象的属性
print(person1.name, person1.age) # Jerry 20
print(person2.name, person2.age) # Tom 18
print(person3.name, person3.age) # Tom 18
```
在上面的例子中,我们创建了一个 `Person` 对象实例 `person1`,并将其浅拷贝给 `person2`,深拷贝给 `person3`。然后修改 `person1` 的属性值,可以看到浅拷贝的 `person2` 的属性值没有改变,而深拷贝的 `person3` 的属性值也没有改变。
阅读全文