Problem 8 (200pts): report_progress
实现 report_progress,它在用户完成打字一个单词时被调用。
它接受 typed 单词列表、prompt 中的单词列表、用户的 user_id 和一个用于上传进度报告到多人服务器的 upload 函数。
typed 中的单词数永远不会超过 prompt 中的单词数。
你的进度是正确打字的 prompt 单词的比例,直到第一个不正确单词为止,除以 prompt 单词的数量。
例如,这个例子进度为 0.25:
report_progress(["Hello", "ths", "is"], ["Hello", "this", "is", "wrong"], ...)
你的 report_progress 函数应该做两件事:上传消息到多人服务器并返回 user_id 玩家的进度。
你可以通过调用 upload 函数上传消息到多人服务器,该函数接受一个包含键 'id' 和 'progress' 的两元素字典。
然后你应该返回玩家的进度,即你计算的单词比例。
提示: 查看下面的字典示例,这是上传函数的潜在输入。 这个字典表示
user_id为 1 且progress为 0.6 的玩家。
{'id': 1, 'progress': 0.6}
在编写任何代码之前,解锁测试以验证你对问题的理解:
$ python ok -q 08 -u
解锁完成后,开始实现你的解决方案。 你可以用以下命令检查正确性:
$ python ok -q 08