使用名为global的属性创建对象

vhmi4jdf  于 2021-07-13  发布在  Java
关注(0)|答案(1)|浏览(224)

出于业务逻辑的原因,我希望能够创建一个具有名为 global . 但我显然不能这么做

class Foo(object):

    def __init__(self):
        self.global = True

因为 global 是一个保留关键字,在python中有特殊意义。使用动态获取属性 __getattr__ 或者 __getattribute__ 但也有同样的问题。不管怎样,我能做到这一点,还是我必须使属性名 global_ ?
我需要能够直接从对象访问属性,所以我不能使用 getattr(foo, 'global') .

pepwfjgg

pepwfjgg1#

我认为你只需要做全局搜索,我不认为有任何方法可以绕过这个,因为用保留关键字命名是非法的,会产生各种各样的问题。
编辑:你可以看看这篇文章:如何在python中使用reserved关键字作为变量名?

相关问题