我有一個函數在這裏寫:爲什麼我在這個Python代碼上得到斷言錯誤?
def addItem(aBookcase, name, mediaType):
"""
Returns False if aBookcase is full, otherwise returns True and
adds item of given name and mediaType to aBookcase.
"""
pass
emptySpacesBefore = aBookcase.getEmptySpaces()
if aBookcase.getEmptySpaces() == 0:
added = False
return added
else:
position = findSpace(aBookcase)
aBookcase.setName(*position, name=name)
aBookcase.setType(*position, mediaType=mediaType)
added = True
emptySpacesAfter = aBookcase.getEmptySpaces()
assert added is True, "No free positions"
assert emptySpacesAfter < emptySpacesBefore, "Same amount of empty spaces"
assert aBookcase.getName(*position) is name, "Error with name"
assert aBookcase.getType(*position) is mediaType, "Error with media type"
然而,當我去與這行代碼來測試功能:
assert addItem(small, "Algorhythms, date structures and compatibility", BOOK)
我得到一個「Asse田」,如下所示:
所以,如果我是正確的,這意味着我沒有處理它,但我不知道如何或爲什麼?我的代碼有問題嗎?有什麼遺漏?
你可以把問題的斷言錯誤的文字?有些人(比如我自己)在阻止imgur的網絡上。 –
@AndrewLamarra:幫助盲人:左上角(剛剛注意到它):'ity',BOOK)',然後「斷言這個代碼未處理」 –