python - python class __dict__ 用于克隆对象属性的用法
问题描述
编辑
澄清:虽然我很欣赏copy
已经发布的对 deep 的更正/建议,但这个问题主要是关于类方法的使用,以及以这种方式使用init__dict__
克隆对象 attrs是否可以。
使用 init 复制对象属性是否有任何问题,更好的方法来实现这一点?
class CopyClass(obj):
def __init__(self, obj1):
super().__init__()
self.__dict__ = obj1.__dict__.copy()
obj2 = CopyClass(obj1)
解决方案
您可以简单地使用copy.deepcopy()
.
from copy import deepcopy
obj = Foo() # Foo is some random class
obj_copy = deepcopy(obj)
推荐阅读
- android - CameraX beta03 和底页滚动问题
- c++ - C++ 为什么我收到类的错误重新定义?
- ios - Xamarin.Forms:iOS 上的软键盘隐藏视图
- java - 在 Docker 中运行的 Apache FTP 客户端在从外部服务器检索文件内容时出现问题
- protractor - 不能红色属性“getText”量角器
- java - 我一直在 android 的 SQLITE Database 上做一些编码,如何在 DatabaseHelper.java 中编写 Where 子句语句
- javascript - 如何允许用户只写 00 到 24 之间的数字
- node.js - 如何使用 axios post 请求上传文件
- groovy - 想要使用 groovy 脚本将文本文件从本地驱动器复制到服务器位置。获取缺少方法异常
- flutter - httpclient post 请求与 application/x-www-form-urlencoded 在颤振中