私は現在、ここにある2番目の練習をしています。 https://automatetheboringstuff.com/chapter5(「ファンタジーゲームインベントリのための辞書機能へのリスト」)Pythonでリストから辞書に項目を追加する
タスクは、リストの項目を辞書に追加することです。
私のforループはリスト全体をループしていません。理由を理解するのを助けてくれますか? したがって金貨キーの値が(ない3れる1だけ増加させ、私はこのコードを実行すると、結果は、「{:1、 『金貨』 43 『ロープ』}」である
def addToInventory(inventory, addedItems):
for i in addedItems:
if i in inventory:
inventory[i] = inventory[i] + 1
else:
inventory[i] = 1
return inventory
inv = {'gold coin': 42, 'rope': 1}
dragonLoot = ['gold coin', 'dagger', 'gold coin', 'gold coin', 'ruby']
inv = addToInventory(inv, dragonLoot)
print(inv)
これが想定されている)、「dagger」と「ruby」は無視されます。
私は他の場所で実際に解決策を見つけましたが、なぜこのコードが機能しないのか理解したいと思っています。
ありがとうございます。
'リターンinventory'があなたの' for'ループ内です!それはすぐに返る –