how to set global const variables in python

后端 未结 2 1891
陌清茗
陌清茗 2020-12-18 00:00

I am building a solution with various classes and functions all of which need access to some global consants to be able to work appropriately. As there is no const

2条回答
  •  失恋的感觉
    2020-12-18 00:05

    General convention is to define variables with capital and underscores and not change it. Like,

    GRAVITY = 9.8
    

    However, it is possible to create constants in Python using namedtuple

    import collections
    
    Const = collections.namedtuple('Const', 'gravity pi')
    const = Const(9.8, 3.14)
    
    print(const.gravity) # => 9.8
    # try to change, it gives error
    const.gravity = 9.0 # => AttributeError: can't set attribute
    

    For namedtuple, refer to docs here

提交回复
热议问题