擅长:python、mysql、java
<p>@Ragnar提供了一个非常好的数学解决方案,但我想发布一个简短的解决方案</p>
<p>如果函数由等距的值给出,则</p>
<pre><code>print(all(abs(x) < 0.001 for x in np.diff(function, n=2)))
</code></pre>
<p>如果函数是线性的,则返回<code>True</code>,否则返回<code>False</code></p>
<p>其思想是,每次函数都以相同的值递增(这里我使用的是<code>X</code>是等距的)。因此,取连续数字的差应该返回具有所有相同项的数组。如果函数是线性的,则再次取连续数的差返回所有零</p>