1. Python / Говнокод #11508

    −101

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    def dict2obj(d):
        if isinstance(d, list):
            d = [dict2obj(x) for x in d]
    
        if not isinstance(d, dict):
            return d
    
        class C(object):
            pass
    
        o = C()
        for k in d:
            o.__dict__[k] = dict2obj(d[k])
    
        return o

    Конечно, о type мы не слышали. Хотя проще было переопределить __getattr__ у метакласса.

    Запостил: cheerfulboy, 31 Июля 2012

    Комментарии (1) RSS

    • Вот почему не type: http://stackoverflow.com/a/1549854/504262
      Ответить

    Добавить комментарий