我定义了一个函数,它将从用户输入中获取值。它是一个路径(基于appJar的.directoryBox)。我已经把目录框的代码弹出到一个函数内,这样它将显示当一个按钮被按下。但是,我似乎不能在函数之外使用值。在
代码的重要部分如下所示:
def dirfunction(button):
dirr = app.directoryBox('box')
app.setEntry('Directory', dirr)
app.showButton('Search')
return dirr
def searchfunction(button):
if button == 'Search':
findBigfile.findBigFiles(dirr, mbSize)
mbSize = app.addLabelEntry('Size in MB')
app.addLabelEntry('Directory')
app.setLabelWidth('Size in MB', '10')
app.setLabelWidth('Directory', '10')
app.addButton('Choose Directory', dirfunction)
app.addButton('Search', searchfunction)
app.hideButton('Search')
app.go()
我试图在dirfunction之外使用'dirr'变量,但我无法使其工作。它只在内部工作。在
编辑:我也不能应用程序目录框在函数之外,因为这将导致当应用程序打开时直接弹出。在
dirr是一个局部变量,它只能在定义的上下文中看到(在您的例子中,在函数dirfunction中,它不存在于它之外)。在
为了能看到外面,你必须在外面声明。在
在这之后,从函数内部访问它,在python 2中,通过使用global:
^{pr2}$现在:
将打印:
相关问题 更多 >
编程相关推荐