Python - 使用方法的 return 值作为常量
Python - using a method's return value as a constant
我正在尝试在我的文件顶部定义一些常量。文件中没有 类,只有导入、常量和方法。可能由于设计不佳,我想使用此文件内部的方法来设置常量。例如:
MY_CONSTANT = function(foo, bar)
def function(foo, bar):
return 6
在这个例子中,我希望 MY_CONSTANT 被分配 int 6。这是问题的简化版本,因为我的函数实际上进行了很多昂贵的调用,而我只希望该函数被调用一次.我打算在循环中使用常量。
这不起作用,因为我收到以下错误:
NameError: name 'function' is not defined
是否有更好的设计,或者如何使用方法调用来设置常量?
您正试图在函数定义之前调用它:
def function(foo, bar):
return 6
MY_CONSTANT = function(foo=None, bar=None)
>>>MY_CONSTANT
6
编辑:我将 foo=None
和 bar=None
设置为 function
因为我不确定你在哪里定义了这些。
我正在尝试在我的文件顶部定义一些常量。文件中没有 类,只有导入、常量和方法。可能由于设计不佳,我想使用此文件内部的方法来设置常量。例如:
MY_CONSTANT = function(foo, bar)
def function(foo, bar):
return 6
在这个例子中,我希望 MY_CONSTANT 被分配 int 6。这是问题的简化版本,因为我的函数实际上进行了很多昂贵的调用,而我只希望该函数被调用一次.我打算在循环中使用常量。
这不起作用,因为我收到以下错误:
NameError: name 'function' is not defined
是否有更好的设计,或者如何使用方法调用来设置常量?
您正试图在函数定义之前调用它:
def function(foo, bar):
return 6
MY_CONSTANT = function(foo=None, bar=None)
>>>MY_CONSTANT
6
编辑:我将 foo=None
和 bar=None
设置为 function
因为我不确定你在哪里定义了这些。