我有这样的代码,当我在交互模式下使用python时可以使用,但是当我将它另存为示例.py试着运行它是行不通的。为什么?你知道吗
import numpy as np
from multiprocessing import Pool
def wrap(args):
sc=np.zeros(2)
n=args[0]
r0=args[1]
rf=args[2]
sc[0]=1. #other complicated funcion not important here
sc[1]=2. #other complicated funcion not important here
return sc
def Scp(n,photozname,zbin):
phi=np.genfromtxt(photozname)
x=phi[phi[:,0]>(zbin*0.5),0]
y=phi[phi[:,0]>(zbin*0.5),1]
N=len(x)
args = [(n,x[i],y[i]) for i in range(N)]
if __name__ == "__main__":
pool = Pool(processes=80)
out=pool.map(wrap,args)
pool.terminate()
sc=np.array(out)
s3c=np.sum(sc[:,0]*y)
s4c=np.sum(sc[:,1]*y)
return s3c,s4c
s3c,s4c=Scp(n,file,zbin)
目前没有回答
相关问题 更多 >
编程相关推荐