Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何访问循环结束时函数内部的np.array的值?_Python_Function_Numpy - Fatal编程技术网

Python 如何访问循环结束时函数内部的np.array的值?

Python 如何访问循环结束时函数内部的np.array的值?,python,function,numpy,Python,Function,Numpy,循环结束后,如何将Q数组写入excel?或者,在循环结束后,如何查看存储在Q中的数据 Nlayers=23 N=365 def main_loop(Z,z,Areat0,Areat1,TempLake,i,HSR,TD,FW,wind): Q=np.zeros(len(rad)) Q[0]=0 Q[i+1]=Qn(HSR,TD,FW,TempLake[0]) Q0=Q[i] Q1=Q[i+1] n=TempLake.size var00=

循环结束后,如何将Q数组写入excel?或者,在循环结束后,如何查看存储在Q中的数据

Nlayers=23
N=365

def main_loop(Z,z,Areat0,Areat1,TempLake,i,HSR,TD,FW,wind):
    Q=np.zeros(len(rad))
    Q[0]=0
    Q[i+1]=Qn(HSR,TD,FW,TempLake[0])
    Q0=Q[i]
    Q1=Q[i+1]
    n=TempLake.size
    var00=Imp_scheme(Q0,Q1,z,Areat0,Areat1,Z,TempLake,wind)
    var01=fix_profile(n,var00,Areat0)
    return var01

TempLake=np.zeros((N,Nlayers))
TempLake[0]=T0

for i in xrange(N-1):
    TempLake[i+1]=main_loop(Z,z,Areat0,Areat1,TempLake[i],i,HSR[i],TD[i],FW[i],wind[i]) 

简而言之,如果没有a)返回它,b)传入并修改它,或者c)声明它是全局的或类似的东西,那么就不能这样做。在大多数情况下,
a
是最好的。在函数的最后一行中,您可以执行以下操作:

return var01, Q
在主
for
循环中:

for i in xrange(N-1):
    result, Q = main_loop(...)
    TempLake[i + 1] = result
do_something_with(Q)
但在您的情况下,这是一个相当尴尬的设计,因为您返回
Q
N
次,但只使用一次。可能有更好的方法,但我无法从示例代码中看出您真正在做什么,所以我无法确定它可能是什么