我是 Python 编码的初学者,这对来自 Java 的我来说有点跳跃。我现在的问题是关于在 Python 中将全局变量用于常量等。在 Java 中,我们对常量有两种想法,我们可以有这样的东西:
private static final HOME_URL_CONST = "localhost:8080";
或者如果我们需要在运行时赋值:
private static HOME_URL = "";
public void init(){
HOME_URL = "localhost:8080";
}
关键是在后一种情况下,一旦设置了静态变量,它就会保持设置状态。但是在 Python 中,情况并非如此。如果我创建一个全局变量,然后在函数中分配它,那么该变量将仅在该函数内具有分配的值。现在我有这样的事情:
def initialize():
global HOME_URL
with open("urls.txt", 'rb') as f:
HOME_URL = json.load(f.read())['urls']
这是一种可接受的方法吗?还是有一些我不知道的影响和副作用?