这是 coddy.tech 网站上的挑战:
创建一个名为 update_availability 的函数,允许您更新图书馆目录中书籍的可用性状态。该函数应将图书馆目录、标题和新的可用性状态作为输入参数,并更新目录中指定书籍的可用性状态
def update_availability(catalog, title, new_availability):
if title in catalog:
catalog[title]['available'] = new_availability
else:
catalog[title]['available'] = False
一些测试用例通过了,但由于某种原因未能全部通过。
错误代码:
Traceback (most recent call last):
File "/tmp/NBGYDzQ2cahiwemgBpKXCVHd1l42/main.py", line 26, in <module>
eval(line)
File "<string>", line 1, in <module>
File "/tmp/NBGYDzQ2cahiwemgBpKXCVHd1l42/main.py", line 8, in update_availability
catalog[title]['available'] = False
KeyError: 'Harry Potter'
您正在尝试更改标题上不存在于
available
中的 catalog
值。相反,创建一个新的:
def update_availability(catalog, title, new_availability):
if title in catalog:
catalog[title]["available"] = new_availability
else:
# at this point title isn't in the catalog, so create one:
catalog[title] = {"available": False}