擅长:python、mysql、java
<p>有不同的原因。
最重要的是,作为一个软件开发人员,您必须使用最简单、最容易理解的方式来编写函数。
方法B简洁明了,易于理解。方法A太复杂,难以理解:如果不知道函数的名称,甚至很难知道它是做什么的。在</p>
<p>这让我们看到了另一个方面:太难阅读的代码太难调试。方法B正确吗?一目了然,是的。方法正确吗?很难理解。我们可以编写一个测试,看看这两个函数是否都能工作(我们应该这样做),但是如果一个函数碰巧不起作用,那么调试方法B要比方法a容易得多</p>
<p>最后但并非最不重要的是,方法B快10倍</p>
<pre><code>if __name__ == '__main__':
import timeit
print(timeit.timeit("LongestWordA('hello this is just an example')", number=1000, setup="from __main__ import LongestWordA"))
print(timeit.timeit("LongestWordB('hello this is just an example')", number=1000, setup="from __main__ import LongestWordB"))
# LongestWordA 0.013688346021808684
# LongestWordB 0.004950157948769629
</code></pre>