-1

我觉得我在问一个非常愚蠢的基本问题,但我已经昏迷了,无法理解它。

我有一个为我解析 pdf 的模块,在模块内部有将 pdf 内容解析为列表的函数。

def pdfToList(inFile):
    #Do all kinds of stuff with inFile
    list = inFile

我从一个单独的文件中调用 pdfToList。因为 pdfToList 解析一个文件,所以当我稍后在我的主程序中需要结果时,我不想再次调用它。所以我想我会在我的模块中用一个单独的函数返回这个值:

def getList():
    return list

不用说,由于范围问题,这不起作用。我怎样才能解决这个问题?

4

1 回答 1

1

做这样的事情

g_lis t= None
def pdfToList(inFile):
    global g_list
    if g_list is None:
       #Do all kinds of stuff with inFile and set g_list once
       g_list = inFile

    return g_list

因此,pdfToList首先检查您是否已经设置了全局变量g_list并返回它,否则设置它,这样您只需要一个可以再次调用的函数,而不必担心再次加载文件

于 2012-10-25T15:32:45.867 回答