编写一个统计英文打字正确率的函数,参数 2 个:分别为原始句子和输 入句子,返回值为正确率,要求保留 2 位小数(例如:原始句子为 Hubei Institute of Technology,输入为 hucei Institute of Technology,错了 2 个字母,再计算正确 率)
时间: 2024-02-25 18:56:19 浏览: 75
中文打字软件(正确率100%,每分钟30字).rar
好的,这是一个简单的统计英文打字正确率的 Python 函数,可以满足你的需求:
```python
def calculate_accuracy(original_sentence, input_sentence):
original_words = original_sentence.split()
input_words = input_sentence.split()
correct_count = 0
for i in range(min(len(original_words), len(input_words))):
if original_words[i] == input_words[i]:
correct_count += 1
else:
for j in range(min(len(original_words[i]), len(input_words[i]))):
if original_words[i][j] != input_words[i][j]:
break
correct_count += 1
accuracy = correct_count / sum(len(word) for word in original_words) * 100
return round(accuracy, 2)
```
函数的原理是将原始句子和输入句子分别按空格分割成单词,然后逐个比较每个单词,如果完全相同则认为是正确的,否则再逐个比较单词中的每个字符,只要有一个字符不同就认为是错误的。最后将正确的字符数除以总字符数,得到正确率并保留两位小数。
阅读全文