如何从函数调用一个数组列表到另一个函数?
问题描述:
例如说,我得到了代码:如何从函数调用一个数组列表到另一个函数?
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]
而且都没有工作。谁能帮我?
答
每当你在一个函数中声明一个变量时,当你退出该函数时,该变量就会被销毁。例如:
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 = []
移到您的功能之外。
您无法从'getRoute'外部看到'getRoutePath',因为它是本地函数。然而,由于'getRoute'返回'getRoutePath',为什么不能直接调用'getRoute'呢?无论听起来你需要一个教程,而不是StackOverflow –