擅长:python、mysql、java
<p>我决定测试1000个名字和2个地点的两个场景</p>
<h2>测试样品</h2>
<p><strong>团队词典:</strong></p>
<pre><code>di = {}
for i in range(1000):
di["Name{}".format(i)] = {'Location': 'result{}'.format(i), 'LocationB':'result{}B'.format(i)}
def get_dictionary_value():
di.get("Name999").get("LocationB")
</code></pre>
<p><strong>团队If语句:</strong></p>
<p>我使用python脚本生成了一个5000行函数<code>if_statements(name, location):</code>,遵循这个模式</p>
<pre><code>elif name == 'Name994':
if location == 'Location':
return 'result994'
elif location == 'LocationB':
return 'result994B'
# Some time later ...
def get_if_value():
if_statements("Name999", "LocationB")
</code></pre>
<h2>计时结果</h2>
<p>您可以使用<a href="https://docs.python.org/2/library/timeit.html" rel="nofollow">timeit</a>函数来测试函数完成所需的时间。你知道吗</p>
<pre><code>import timeit
print(timeit.timeit(get_dictionary_value))
# 0.06353...
print(timeit.timeit(get_if_value))
# 6.3684...
</code></pre>
<p>所以你有它,字典在我的机器上是100倍的速度比庞大的165kb如果语句函数。你知道吗</p>