我和其他在sshIP中的人一起定义了全局的Main
foo,bar,sshIP = '','',''使用wx按钮事件,我定义了一个名为load的函数来测试sshIP是否有一个值,或者它是否仍然是'',根据我所看到的,我可以使用isspace()来完成这个任务,但是,我的实现似乎总是会遇到一个NameError,而sshIP却没有定义。load是Main的一个函数
def load(self,e):
if sshIP.isspace():
self.progressBox.AppendText("Cannot install, device not connected")
else:
self.installBtn.Enable()发布于 2016-12-13 14:35:27
因为Main是一个函数,所以这些变量不是全局变量,除非您已经将它们标记为全局变量。
def Main():
global foo
global bar
global sshIP
foo,bar,sshIP = '','',''但是,您可以考虑将这些变量作为参数传递给您接下来调用的任何变量,而不是使用全局变量。
要测试非空字符串,只需:
if sshIP:因为空字符串在布尔上下文中为False。
https://stackoverflow.com/questions/41123402
复制相似问题