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