代码之家  ›  专栏  ›  技术社区  ›  mpen

从文件中获取全局变量作为dict?

  •  1
  • mpen  · 技术社区  · 14 年前

    constants.py ,它包含一组全局常量。有没有一种方法可以让我把它们都当成dict,就为了这个文件?

    2 回复  |  直到 14 年前
        1
  •  5
  •   cji    14 年前

    应该很简单:

    import constants
    print(constants.__dict__)
    
        2
  •  2
  •   Community rohancragg    7 年前
    import constants
    
    constants_dict = {}
    for constant in dir(constants):
        constants_dict[constant] = getattr(constants, constant)
    

    我不确定我是否明白这一点。写作怎么样 constants_dict['MY_CONSTANT'] constants.MY_CONSTANT ?

    下面是另一种写上述内容的方法,具体取决于您想要的紧凑程度。

    constants_dict = dict((c, getattr(constants, c)) for c in dir(constants))
    

    cji 为了胜利! constants.__dict__