在python中将三个函数定义为一个

2024-10-04 03:29:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我在python中定义了这些函数:

def Density(rho0,r,Rc,Rd):

   if r < Rc :
   return  rho0 

   elif r> Rc :
   return rho0*np.exp(-(r-Rc)/Rd) 

def Thickness_H(H0,r,Rh):   
    return H0*np.exp(r/Rh)

现在我想用这两个函数来写最后的方程,用这两个函数:

新函数如下所示(我不知道如何将第一个和第二个函数放入下面的函数中):

def Density_distribution(H0,Rh,r,z,rho0,Rc,Rd):

      return firstfunction*np.exp(-z/secondfunction)

并绘制它:

r = np.linspace(0.,10., 100) 
p =Density_distribution(H0,Rh,r,z,rho0,Rc,Rd)
plt.plot(r, p)
plt.show()

谢谢你的帮助


Tags: 函数returnif定义defnppltrd
1条回答
网友
1楼 · 发布于 2024-10-04 03:29:42

只需调用函数即可在任何语句中获取其返回值:

def Density_distribution(H0, Rh, r, z, rho0, Rc, Rd):
      return Density(rho0, r, Rc, Rd) * np.exp(-z / Thickness_H(H0, r, Rh))

或者,如果您在Density_distribution中以字符串形式接收rho0参数,只需在调用Density函数之前将其转换为float

def Density_distribution(H0, Rh, r, z, rho0, Rc, Rd):
      return Density(float(rho0), r, Rc, Rd) * np.exp(-z / Thickness_H(H0, r, Rh))

相关问题 更多 >