擅长:python、mysql、java
<pre><code>prices = {'banana':'4', 'apple':'2', 'pear':'3'}
stock = {'banana':6, 'orange':32, 'pear':15}
for item in (prices.keys() & stock.keys()):
print (item,"price:",prices.get(item,'-'),"stock:",stock.get(item,0))
</code></pre>
<p>产生</p>
<pre><code>orange price: - stock: 32
pear price: 3 stock: 15
banana price: 4 stock: 6
apple price: 2 stock: 0
</code></pre>
<p>如果stock和prices字典在每个字典中包含不同的薯条('keys'),那么使用默认的get会有帮助。<code>.get()</code>函数在这里确实有帮助。</p>
<p>正如mgilson所提到的,下面一行是创建全套水果的地方。</p>
<pre><code>prices.keys() & stock.keys() #{'orange', 'pear', 'banana', 'apple'}
</code></pre>
<p>我以前也用过set</p>
<pre><code>set(prices.keys().extend(stock.keys())
</code></pre>
<p>但我更喜欢<code>&</code>方法。</p>