擅长:python、mysql、java
<p>执行以下功能:</p>
<pre><code>def func1(x):
return x+1
def func2(x):
return x*2
</code></pre>
<p>你自己可以这样做:<code>func1(func2(3))</code>,它将返回3乘以2加1。这是因为<code>func1(func2(3))</code>本身实际上返回一个值,而不是一个函数。在</p>
<p>但是,既然你想把它作为主函数的基本参数,像这样:</p>
^{pr2}$
<p>它不知道该怎么办,因为x没有默认值。。。在</p>
<p>但您可以这样做:</p>
^{3}$
<p>这将对1进行适当的数学运算,然后将其赋值为x(因为如前所述,func1(func2(3))`将返回函数的结果,而不是函数本身,然后将其乘以3。因为您默认x等于一个值(func1(func2(1))</p>
<p>这仍然是一个糟糕的做法,因为您将默认使用<code>func1(func2(1)</code>输出的任何内容。在</p>
<p>你最终可能想要的是更简单的东西:</p>
<pre><code>def main(x):
y = func1(func2(x))
return y*3
</code></pre>
<p>或者更简单</p>
<pre><code>def main(x):
return x*3
#and then just call it like this
main(func1(func2(1))
</code></pre>