我是新的python和OOPS.I期望我的模塊add_book增加書籍是否已經存在於字典中。請幫助我。不確定爲什麼for循環不按預期工作。在閱讀字典時,循環中的Python邏輯錯誤
https://github.com/amitsuneja/Bookstore/commit/4aefb378171ac326aacb35f355051bc0b057d3be
我是新的python和OOPS.I期望我的模塊add_book增加書籍是否已經存在於字典中。請幫助我。不確定爲什麼for循環不按預期工作。在閱讀字典時,循環中的Python邏輯錯誤
https://github.com/amitsuneja/Bookstore/commit/4aefb378171ac326aacb35f355051bc0b057d3be
你不應該添加到列表中,而你還在迭代它。此外,您的代碼將在列表中添加的每個項目的新項目,該項目具有不同的名稱。相反,您應該使用for/else
循環。在這裏,else
的情況只會在循環中沒有break
的情況下觸發。
for recordlist in self.mybooksinventory:
if self.name == recordlist['name']:
recordlist['quantity'] += 1
break # break from the loop
else: # for/else, not if/else !
self.mybooksinventory.append({'name':self.name,'stuclass':self.stuclass,'subject':self.subject,'quantity':1})
感謝您的幫助。它爲我工作 – user8588795
請關閉此 – user8588795
你有什麼錯誤嗎? – nacho