1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| from copy import copy,deepcopy class Dog: def __init__(self, name, gender='公'): self.name = name self.gender = gender
def __repr__(self): return str(self.__dict__)
class Person: def __init__(self, name, age=18, dog=None): self.name = name self.age = age self.dog = dog
def __repr__(self): return str(self.__dict__)
p1 = Person('小明', dog=Dog('财财')) p2 = p1 p3 = copy(p1) p4 = deepcopy(p1)
print(f'p1:{p1}, id:{id(p1)}') print(f'p2:{p2}, id:{id(p2)}') print(f'p3:{p3}, id:{id(p3)}') print(f'p4:{p4}, id:{id(p4)}') print('-------------------------------------------------') p1.name = '小花' p1.dog.name = '大黄' print(f'p1:{p1}, id:{id(p1)}') print(f'p2:{p2}, id:{id(p2)}') print(f'p3:{p3}, id:{id(p3)}') print(f'p4:{p4}, id:{id(p4)}')
|