Поиск выражения в docx файле с помощью python

Рейтинг: 0Ответов: 1Опубликовано: 22.02.2023

у меня есть файл, такого вида.введите сюда описание изображения

Я хочу написать парсер, который будет забирать Сам вопрос, его ответы и рандомизировать их. Т.е. после запуска программы мне будут выдаваться случайный вопрос и его ответы вперемешку(Просто порядок, сам логический смысл будет оставаться). На мой взгляд задача сложная, не моего уровня. Надеюсь тут найдутся те, кто сможет это реализовать. Я не прошу весь код, я прошу лишь направление. Заранее спасибо <3

Ответы

▲ 0
import random


file_path = input("Введите путь к файлу:")
file_text = """"""
#Переносим текст из твоего файла в строки, чтобы меньше работать с файлом
with open(file_path) as file:
    for line in file:
        file_text = file_text + str(line) + "\n"
#Из твоего файла видно, что на 1 вопрос 5 вариантов ответа, тогда каждая 8 строка - вопрос(варианты ответа выделены
#Создаем списки с вопросами и ответами(списк с ответами состоит из подсписков, индексация вопроса и подсписка с ответами должна совпадать)
questions = []
answers = []
#Создаём переменную, которая будет отслеживать, является ли текущая строка вопросом
i = 0
#Создаём переменную для сопоставления индексации
index = -1
for line in file_text:
    if i == 0:
        questions.append(line)
        answers.append([])
        index += 1
    else:
        #Проверяем строку на пустоту
        if line != "\n":
            answers[index].append(line)
    i += 1
    if i == 7:
        i = 0
#Сейчас у тебя готовы 2 списка: 1 c вопросами, а 2 с ответами
#Перебираем список с вопросами и получаем индекс выбранного вопроса, тогда выводим вопрос и выводим варианты ответа к нему
random_question_index = random.randint(0, len(questions))
print(questions[random_question_index])
print(answers[random_question_index])

Код подстроен под структуру файла, но, так как файл ты не приложил, то может работать некорректно, так что подформатируй там его. !!!Важно: этот код работает с txt, если тебе прям принципиально docx, есть функции для создание файла с тем же содержимым, но другого формата. Вообщем, набросок кода я тебе дал, дальше подгони под свои нужды