擅长:python、mysql、java
<p>商店目录定义为:</p>
<pre><code>shopCatalog = { '1. MCM Backpack' : 790 , '2. Gucci Belt' : 450 , '3. Supreme Box Logo Tee' : 100 , '4. Louis Vuitton Trenchcoat' : 1600 , '5. OFF-WHITE windbreaker' : 1200 , '6. Balenciaga Sneakers' : 850 }
</code></pre>
<p>但是,您正在尝试按数字访问密钥。例如</p>
<p><code>shopCatalog[2]</code>作为有效键不存在。有效密钥是
<code>shopCatalog['2. Gucci Belt']</code></p>
<p>相反,尝试一个元组列表。单子比较好,因为顺序有保证。在dict中,即使您对项目进行了编号,它也可能打印出错误的顺序</p>
<pre><code>shopCatalog = [ ('MCM Backpack', 790), ('Gucci Belt' : 450) , ...]
</code></pre>
<p>如果您想要第一个项目,您可以通过索引访问它。如果你想给它们编号,同样地,只需使用索引(尽管对于两者,请记住它是零索引的,所以你可能需要添加以打印编号,然后减去一以得到正确的项目)</p>
<p>另外,你的逻辑也有缺陷:
<code>shopChoice == 1 or 2 or 3 or 4 or 5 or 6:</code></p>
<p>当人们这么说的时候,编码并不是这样工作的。相反,你必须:
<code>shopChoice ==1 or shopChoice ==2</code>等等。但是跳过这些,直接说:
<code>elif 1 <= shopChoice <= 6:</code></p>