<p>您应该在第一行(<code>def</code>)上加一个冒号(<code>:</code>)。在</p>
<p>这适用于<a href="http://www.compileonline.com/execute_python3_online.php" rel="nofollow">online python environment</a>:</p>
<pre><code>def input(a, b, c) :
if a <= b <= c or c <= b <= a :
return b
elif b <= a <= c or c <= a <= b :
return a
else:
return c
</code></pre>
<p>此外,我想使用最小值和最大值是比较明智的。Min和max有时直接由CPU支持,有些实现避免了分支(如果是else):</p>
^{pr2}$
<p>或者:</p>
<pre><code>def input(a, b, c) :
return min(max(a,b),max(b,c),max(a,c))
</code></pre>
<p>最后一个也是数值稳定的。在</p>
<p>在大多数情况下,应该避免使用if-then-else子句。它们减少了流水线的数量,尽管在解释语言中这可能不会提高性能。在</p>
<hr/>
<p>根据评论,我想你想写一个交互式程序。可以这样做:</p>
<pre><code>def middle(a, b, c) : #defining a method
return min(max(a,b),max(b,c),max(a,c))
a = int(input("Give a value: "))
b = int(input("Give b value: "))
c = int(input("Give c value: "))
print("The requested value is ")
print(middle(a,b,c)) #calling a method
</code></pre>
<p><em>定义</em>方法永远不会导致Python<em>使用该方法。<code>def</code>块中的<code>a</code>、<code>b</code>和{<cd5>}不是程序其余部分中的<code>a</code>、<code>b</code>和{<cd5>}。这些是“碰巧具有相同名称的其他变量”。为了<em>调用</em>方法。您将方法名写在括号内,并将要调用方法的<em>参数</em>括起来。在</p>