• 技术文章 >Python技术 >Python基础教程

    __dict__在python中的实例操作

    小妮浅浅小妮浅浅2021-05-26 09:21:58原创5122

    1、可以从字典中实例化一个对象,或者通过保存实例的 __dict__ 来恢复实例。

    >>> def new_employee_from(d):
    ...     instance = object.__new__(Employee)
    ...     instance.__dict__.update(d)
    ...     return instance
    ...
    >>> e1 = new_employee_from({'department': 'IT', 'name': 'bobo'})
    >>> e1
    <Employee: IT-bobo>
    >>> state = e1.__dict__.copy()
    >>> del e1
    >>> e2 = new_employee_from(state)
    >>> e2
    >>> <Employee: IT-bobo>

    2、因为 __dict__ 的完全开放,所以我们可以向其中添加任何 immutable 类型的 key,比如数字:

    >>> e.__dict__[1] = 1
    >>> e.__dict__
    {'department': 'IT', 'name': 'bobo', 1: 1}

    这些非字符串的字段是我们无法通过实例对象访问的,为了确保不会出现这样的情况,除非必要的情况下,一般最好不要直接对 __dict__ 进行写操作,甚至不要直接操作 __dict__。

    以上就是__dict__在python中的实例操作,希望对大家有所帮助更多Python学习推荐:python教学

    本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

    专题推荐:python __dict__
    上一篇:python中__dict__的实例属性存储 下一篇:Python对象属性的查找顺序

    相关文章推荐

    • 在python中defaultdict计算键值的和• python中dict有哪些删除的方式• defaultdict在python中接收调用对象• OrderedDict在python字典的实现• dict.setdefault()在python中设置默认值• python中defaultdict的初始化• python中__dict__的实例属性存储

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网