![](/img/trans.png)
[英]How to use two returned values from a function in another function? MAIN()
[英]How to access returned function values from another function
我想从另一个 function 访问返回的 function 值,但我无法成功。 有人可以告诉我该怎么做吗?
这是定义的 function 'thermo' 和我使用 IAPWS97 库
def thermo (p = 0.006112127, H = 1493):
tp = IAPWS97(P= p, h= H )
rho = tp.rho
temp = tp.T
xq = tp.x
tpmu = IAPWS97(T=temp, x= 0)
Mu = tpmu.mu
return rho,temp,xq,Mu
这是第二个 function
def f2 (m= 1, g= 2, h= 3):
c = m*g+h
rho_p = -rho / p^c
return rho_p
谢谢
当您定义这些函数时,您就是在写下如何根据提供的输入值计算 output 个值。 为了获得 function 的 output 值,您需要调用function,如下所示:
def f2(m=1, g=2, h=3):
c = m * g + h
rho, temp, xq, Mu = thermo(p, h)
rho_p = -rho / p ^ c
return rho_p
不幸的是,即使我上面给你的代码也行不通。 你会得到NameError: name 'p' is not defined
,因为你没有指定变量p
的值是什么。 我推断您可能会使用h
作为thermo
中H
的输入值,但这只是一个猜测。 当您调用 function 时,您需要为其提供所需的所有输入。 如果您没有值,则需要显式创建它(如thermo(0.0112, h)
)或让f2
的调用者提供它(如def f2(m=1, g=2, h=3, p=0.0112)
)。
听起来您可能需要花一些时间阅读有关如何定义和使用函数的内容。 这是官方 Python 教程中关于定义函数的部分。
您需要调用第一个 function 并存储 output 的 rho 值并将其输入 f2 function。
def f2 (m, g2, h3, rho):
c = m*g+h
rho_p = -rho / p^c
return rho_p
def thermo (p = 0.006112127, H = 1493):
tp = IAPWS97(P= p, h= H )
rho = tp.rho
temp = tp.T
xq = tp.x
tpmu = IAPWS97(T=temp, x= 0)
Mu = tpmu.mu
return rho,temp,xq,Mu
a,b,c,d = thermo(p = 0.006112127, H = 1493)
f2(1,2,3,a)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.