17.编写python程序,模拟打字练习程序的成绩评定。假设origin为原始内容,userInput为用户练习时输入的内容,要求用户输入的内容不能大于原始内容的长度。如果对应位置的字符一致则认为正确,否则判定输入错误。最后成绩为:正确的字符数量/原始字符串长度,按百分制输出,要求保留2位小数。说明,origin在程序中指定,userInpu由用户输入。(提示:可能用到的函数zip(),sum(),round(),isinstance(),len())
时间: 2024-02-13 07:02:15 浏览: 67
Python编写打字训练小程序
下面是实现要求的Python代码:
```python
origin = "hello world"
userInput = input("请输入你的练习内容:")
if len(userInput) > len(origin):
print("输入内容不能超过原始内容长度!")
else:
correct_count = sum(c1 == c2 for c1, c2 in zip(origin, userInput))
score = round(correct_count / len(origin) * 100, 2)
if isinstance(score, float):
print("你的成绩是:{:.2f}分".format(score))
else:
print("计算错误!")
```
程序的执行流程如下:
1. 首先指定原始内容为"hello world";
2. 然后让用户输入练习内容,保存在变量userInput中;
3. 判断用户输入的内容是否超过原始内容的长度,如果超过则输出错误提示,否则继续执行;
4. 使用zip()函数将原始内容和用户输入的内容一一对应,判断每个位置上的字符是否一致,记录正确的字符数量,保存在变量correct_count中;
5. 计算成绩,公式为:正确的字符数量/原始字符串长度*100,使用round()函数保留2位小数;
6. 判断成绩是否为浮点数,如果是则输出成绩,否则输出计算错误提示。
例如,如果用户输入的练习内容为"hello workd",则程序输出的成绩为90.91分。
阅读全文