如何从函数调用一个数组列表到另一个函数?

问题描述:

例如说,我得到了代码:如何从函数调用一个数组列表到另一个函数?

def getRoute(getRouteFile): 
    getRoutePath = [] 
    routeFile = open(getRouteFile, "r") 
    for routes in routeFile: 
     getRoutePath.append(map(ord, routes.split('>'))) 
    return getRoutePath 

如果我做了功能,如它会尝试从调用的函数调用getRoutePath数组中的项目:

def routeCalculation(getRoute,nodeTable, currentNode): 

我如何叫它?我试图做这些:

def routeCalculation(getRoute,nodeTable, currentNode): 
    route = getRoutePath 

def routeCalculation(getRoute,nodeTable, currentNode): 
    route = getRoute[getRouthPath] 

而且都没有工作。谁能帮我?

+3

您无法从'getRoute'外部看到'getRoutePath',因为它是本地函数。然而,由于'getRoute'返回'getRoutePath',为什么不能直接调用'getRoute'呢?无论听起来你需要一个教程,而不是StackOverflow –

每当你在一个函数中声明一个变量时,当你退出该函数时,该变量就会被销毁。例如:

a = "" 
def function(): 
    a = "hello" 
    b = "hello" 

print(a) #prints "hello" because a was declared outside of the function 
print(b) #does not print anything 

这就是所谓的“范围”,如果你有了解它的一个问题,你应该寻找一个教程吧。为了解决您的问题,请将代码getRoutePath = []移到您的功能之外。