x += (f"Предмет: {subject}")
x += '\n'
x += (f"Сроки проведения: {dates}")
x += '\n'
x += (f"Время начала: {times}")
x += '\n'
x += (f"Классы участия: {grades}")
x += '\n'
x += (f"Итоги проверки: {itog}")
x += '\n'
x += (f"Задания и решения: {results_publication}")
x += '\n'
x += ("-" * 20)
x += '\n'
x_split = x.split('\n')
print(x_split[0]) # где 0 - номер нужной вам строки (считая с 0)
Если вы ищете по предмету, то можно и такое сварганитьdef extract_specific_lines(text, subject_keyword):
# Разбиваем строку на отдельные строки
lines = text.split('\n')
# Начинаем с пустого списка для хранения нужных строк
selected_lines = []
# Флаг для отслеживания, когда начинается нужный блок строк
start_collecting = False
# Перебираем все строки
for line in lines:
if line.startswith(f"Предмет: {subject_keyword}"):
start_collecting = True
if start_collecting:
selected_lines.append(line)
# Останавливаем сбор после последней нужной строки
if line.startswith("Задания и решения:"):
break
# Объединяем выбранные строки в одну строку
result = '\n'.join(selected_lines)
return result
# Ваша исходная строка
x = """Предмет: Право
Сроки проведения: 3 декабря 2024 года
Время начала: 16:00
Классы участия: 9–11
Итоги проверки: официальная публикация ожидается 9.12
Задания и решения: задания и решения
--------------------
Предмет: Математика
Сроки проведения: 4 декабря 2024 года
Время начала: 16:00
Классы участия: 7–8
Итоги проверки: официальная публикация ожидается 12.12
Задания и решения: задания и решения"""
# Используем функцию для извлечения нужных строк
subject_keyword = "Математика"
result = extract_specific_lines(x, subject_keyword)
# Выводим результат
print(result)
blocks = []
block = {
"Предмет": subject,
"Сроки проведения": dates,
"Время начала": times,
"Классы участия": grades,
"Итоги проверки": itog,
"Задания и решения": results_publication
}
blocks.append(block)
for block in blocks:
for key, value in block.items():
print(f"{key}: {value}")
print("-" * 20)