zoukankan      html  css  js  c++  java
  • python的AttrDict

    不解释, 算是分享, 初学python(其实两年前上课就学了, 但一直在焦虑, 啥也没学会, 相当于初学). 下面两个方法都是用于得到AttrDict(dict不能通过d.x访问属性, AttrDict用起来和dict一样, 但是可用通过d.x访问). 第一个不安全, 第二个安全, 但它们都很有意思.

    class AttrDict(dict):
        def __init__(self, *args, **kwargs):
            super(AttrDict, self).__init__(*args, **kwargs)
            self.__dict__ = self
    

    这段有意思之处在于揭示了d.x的时候, python是怎么查找x的.

    class AttributeDict(dict):
        __slots__ = () 
        __getattr__ = dict.__getitem__
        __setattr__ = dict.__setitem__
    

    这个有意思之处是, 展示了函数即对象. 也提醒我们__getattr__合适会被调用.

  • 相关阅读:
    node.js----服务器http
    node.js---对文件操作
    node.js
    历史管理
    h5
    git与github
    js中面向对象(创建对象的几种方式)
    jq基础
    POJ 2492 A Bug's Life
    POJ 1742 Coins
  • 原文地址:https://www.cnblogs.com/Tokubara/p/14243255.html
Copyright © 2011-2022 走看看