Не работает счётчик баллов Python
При каждом правильном ответе, в переменной result должны суммироваться и сохраняться добавленные балы. Но при каждом чтении строк из текстового документа, переменная result обнуляется. Суть моего задания создать программу, которая выводит слова из текстового документа в виде теста, и при этом перемешивая буквы в них, а пользователь в свою очередь должен отгадать выведенное слово. И в конце теста, программа должна вывести количество набранных баллов за правильные ответы. У меня есть два предположения почему и откуда берутся ноги у моей проблемы.
- Вероятно проблема в переменной lines в которой прописано "file.readlines()" из за которого программа считывает весь текстовый документ разом.
- Ну или же проблема в условии "if word == read_word[:-1]:" Но как сделать по другому чтобы в функцию строки текст-дока входили поочерёдно, я не знаю.
def test_verification(word, read_word):
score = 0
start = True
while start:
if word == read_word[:-1]:
print("Программа: Верно! вы получаете 10 очков.")
score += 10
elif word != read_word:
print(f"Неверно! Верный ответ - {read_word}.")
print(score)
start = False
def random_words(random_word):
import random
text = random_word
words = text.split()
for i, word in enumerate(map(list, words)):
random.shuffle(word)
words[i] = ''.join(word)
return words
with open('words.txt', 'r+') as file:
lines = file.readlines()
login = input('Программа: Введите ваше имя : ')
active = True
while active:
for line in lines:
question1 = line
response_1 = input(f"Программа: Угадайте слово: {random_words(random_word=line)}\n")
test_verification(word=response_1, read_word=question1)
print()
active = False