С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 15.03.2021
Сообщений: 20

Форматирование текста

24.01.2023, 14:38. Показов 727. Ответов 6

Студворк — интернет-сервис помощи студентам
В общем суть такова: было желание сделать бота, который парсит электронный дневник, но так как сайт без апи, и написан очень криво, я получаю всю информацию с него сплошным текстом:
Время
Предмет
Что задано
Комментарий
Оценка
08:00—08:45
История

Прочитать 35 параграф.Стр.147 вопросы 1,3,4 устно; стр.148 задание 6 выполнить.
09:00—09:45
История

Прочитать параграф стр.156-161.
10:05—10:50
Математика
11:10—11:55
Математика

п. 8.3,8.4, № 8.18-8.19, 8.22
12:10—12:55
Литература

выучить стихотворения Мандельштама
13:10—13:55
Физическая культура

Освоить прохождение дистанции 3 км. классическим ходом. Повторить подъем «елочкой». Торможение и поворот плугом и упором.
14:10—14:55
Физическая культура

Освоить попеременный четырехшажный ход.


затем я конвертировал это в List, получилось это:
['Время', 'Предмет', 'Что', 'задано', 'Комментарий', 'Оценка', '08:00—08:45', 'История', 'Прочитать', '35', 'параграф.Стр.147', 'вопросы', '1,3,4', 'устно;', 'стр.148', 'задание', '6', 'выполнить.', '09:00—09:45', 'История', 'Прочитать', 'параграф', 'стр.156-161.', '10:05—10:50', 'Математика', '11:10—11:55', 'Математика', 'п.', '8.3,8.4,', '№', '8.18-8.19,', '8.22', '12:10—12:55', 'Литература', 'выучить', 'стихотворения', 'Мандельштама', '13:10—13:55', 'Физическая', 'культура', 'Освоить', 'прохождение', 'дистанции', '3', 'км.', 'классическим', 'ходом.', 'Повторить', 'подъем', '«елочкой».', 'Торможение', 'и', 'поворот', 'плугом', 'и', 'упором.', '14:10—14:55', 'Физическая', 'культура', 'Освоить', 'попеременный', 'четырехшажный', 'ход.']

Хочу сделать вот так, но ума не хватает, как бы это провернуть, тк скачал пайтон несколько дней назад


08:00—08:45 | История | Прочитать 35 параграф.Стр.147 вопросы 1,3,4 устно; стр.148 задание 6 выполнить.

09:00—09:45 | История | Прочитать параграф стр.156-161

10:05—10:50 | Математика |

11:10—11:55 | Математика | п. 8.3,8.4, № 8.18-8.19, 8.22

12:10—12:55 | Литература | выучить стихотворения Мандельштама

13:10—13:55 | Физическая культура | Освоить прохождение дистанции 3 км. классическим
ходом. Повторить подъем «елочкой». Торможение и поворот плугом и упором.

14:10—14:55 | Физическая культура | Освоить попеременный четырехшажный ход.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.01.2023, 14:38
Ответы с готовыми решениями:

Форматирование текста с регулярными выражениями
Уважаемые специалисты пайтон, столкнулся с интересной задачей: нужно изменить все подстроки в тексте с 'US$ХХХ' на 'XXX долл. США'....

Форматирование строк, выравнивание текста
надо сделать так, чтобы текст был выровнен по правому краю, но при этом убрать ненужные пробелы n = int(input('Введите количество...

При вставке текста в файл нарушается форматирование
Такая проблема: при вставке текста в документ убираются строки и все сливается в кашу( hand=autoit.control_get_text('',...

6
132 / 96 / 40
Регистрация: 24.03.2022
Сообщений: 357
24.01.2023, 17:53
Лучший ответ Сообщение было отмечено Werosaism как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import re
 
a = ['Время', 'Предмет', 'Что', 'задано', 'Комментарий', 'Оценка', '08:00—08:45', 'История', 'Прочитать', '35',
'параграф.Стр.147', 'вопросы', '1,3,4', 'устно;', 'стр.148', 'задание', '6', 'выполнить.', '09:00—09:45', 'История',
'Прочитать', 'параграф', 'стр.156-161.', '10:05—10:50', 'Математика', '11:10—11:55', 'Математика', 'п.', '8.3,8.4,',
'№', '8.18-8.19,', '8.22', '12:10—12:55', 'Литература', 'выучить', 'стихотворения', 'Мандельштама', '13:10—13:55', 'Физическая',
'культура', 'Освоить', 'прохождение', 'дистанции', '3', 'км.', 'классическим', 'ходом.', 'Повторить', 'подъем', '«елочкой».', 'Торможение',
'и', 'поворот', 'плугом', 'и', 'упором.', '14:10—14:55', 'Физическая', 'культура', 'Освоить', 'попеременный', 'четырехшажный', 'ход.']
for i in range(6, len(a)):
    s = ''.join(re.findall(r'\d\d:\d\d.\d\d:\d\d', a[i]))
    if a[i] == s:
 
        print('\n','\n', a[i], end=' ')
    else:
        print(a[i], end=' ')
1
0 / 0 / 0
Регистрация: 15.03.2021
Сообщений: 20
24.01.2023, 17:57  [ТС]
Если интересно, я решил это вот так:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
i = 0
    while i < len(item_list):                              ##Formating gotten informatinon
        if '—' in item_list[i]:
            item_list[i] = '| ' + item_list[i] + ' |'
            item_list.insert(i, '\n\n')
            i = i + 1
        i = i + 1
    i = 0
    while i < len(item_list):        ##Formating gotten informatinon
        for el in BAD_DATA:
            if item_list[i] == el:
                item_list[i] = item_list[i] + ' |'
 
        if ((item_list[i] == '5') | (item_list[i] == '4') | (item_list[i] == '3') | (item_list[i] == '2')):
            if item_list[i+1] == '\n\n':
                print('| Оценка:', item_list[i], end= '')
            else:
                print(item_list[i])
        else:
            print(item_list[i], end=' ')
        i = i + 1
0
24.01.2023, 18:01

Не по теме:

Цитата Сообщение от Werosaism Посмотреть сообщение
вот так
Чего на английском и что за for el in BAD_DATA?

0
0 / 0 / 0
Регистрация: 15.03.2021
Сообщений: 20
26.01.2023, 17:40  [ТС]
на английском самому просто проще) for el in BAD_DATA - поясняю: был список всех предметов в bad data(позже был переименован в subject_data), перебирает спаршенный элемент с тем, что есть в списке - > так определяется предмет ли это, либо же дз(просто текст)
0
26.01.2023, 20:09

Не по теме:

да понятно, что список, просто в код он не попал, код не весь. И зачем-то заглавными буквами.

0
0 / 0 / 0
Регистрация: 15.03.2021
Сообщений: 20
26.01.2023, 22:11  [ТС]
заглавными буквами просто понятнее, для меня, что это список, в коде он не нужен, там просто список предметов
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.01.2023, 22:11
Помогаю со студенческими работами здесь

Форматирование текста: как упорядочить данные согласно возрасту?
Создайте текстовый файл, содержащий контактные данные некоторого количества людей согласно следующей структуре: &lt;ФИО&gt; &lt;дата...

Форматирование текста html
Привет! Работаю с консолью Django. Вставляю туда текст с отступами и переносами строк, а на сайте получаю текст без этих переносов и...

Форматирование текста и разбитие на строчки
почему вот так не получается: d = 3 st = input() for i, s in enumerate(st.splitlines()): print(*filter(lambda x: (i % 2) ^ (x %...

Убрать форматирование текста в textEdit
Всем здравствуйте, при создании моей программы у меня возникла такая проблема: https://yadi.sk/i/yj_21pU7_pM6RA Как убрать...

RichEdit или RTF форматирование текста, а лучше HTML форматирование
Привет формучани. Подскажите бесплатный компонент который позволил бы выводить текст в формате RTF или HTML. Очень хорошо подходит TMS...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru