在Python中定义变量(宏)

时间:2014-07-29 07:23:09

标签: python

我在我的一个项目中使用python,我想在C中定义一些像#define这样的变量,这样如果我想改变它,我只能在一个地方改变它。

我知道我们可以使用全局变量。但是,我不想在我使用变量的所有函数中指定关键字“global”。

其实我想要这样的东西。(这只是一个随机的例子!)

DEFINE_MAX = 100

def function1(num):
    return num < DEFINE_MAX

def function2(num):
    return num > DEFINE_MAX

变量DEFINE_MAX可能会在整个应用程序中使用。所以我想在一个共同的地方定义它。

那我怎么能在python中做到这一点?

1 个答案:

答案 0 :(得分:8)

首先,如果您的函数不需要对全局变量的写访问权,那么就不需要在函数内声明它们global。它们将通过通常的三命名空间(本地,全局,内置)名称解析搜索找到。如果您正在撰写全局变量,请重新考虑您的设计。

您提供的代码示例非常好,并且有效地为您提供了对程序参数所需的中央控制。

只是用一些术语,这些值通常被称为符号清单常量