4 / 4 / 2
Регистрация: 07.05.2014
Сообщений: 489

считать таблицу

29.11.2016, 20:50. Показов 4606. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем здравствуйте, нужна помощь. Есть документ. Структура документа следующая: блок пронумерованных абзацей(их может быть любое количество) после которого следует таблица и так много раз. Необходимо по номеру абзаца заходить в соответствующий стб таблицы и брать информацию. необходимо к абзацам дописать данные из таблицы
Вложения
Тип файла: doc пример.doc (40.0 Кб, 7 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.11.2016, 20:50
Ответы с готовыми решениями:

Считать и вывести таблицу - 3
Напишите программу, которая сначала считывает элементы таблицы один за другим, затем выводит их в виде таблицы. Не используйте...

Считать и вывести таблицу
Напишите программу, которая сначала считывает элементы таблицы один за другим, затем выводит их в виде таблицы. Формат ввода На...

Считать и отсортировать таблицу
Напишите программу, которая сначала считывает элементы таблицы один за другим, затем выводит их в виде таблицы. Каждый ряд таблицы нужно...

27
4 / 4 / 2
Регистрация: 07.05.2014
Сообщений: 489
04.12.2016, 03:15  [ТС]
Студворк — интернет-сервис помощи студентам
Так и думал. Я то подумал, что он как текст переносится будет.

Добавлено через 47 минут
А как узнать сколько строк и столбцов в таблице, какой метод?
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
04.12.2016, 03:27
я Вам зря код что ли писал несколько часов?
len(t.rows), len(t.columns)
0
4 / 4 / 2
Регистрация: 07.05.2014
Сообщений: 489
04.12.2016, 11:27  [ТС]
Нет, не зря. Спасибо большое.
0
4 / 4 / 2
Регистрация: 07.05.2014
Сообщений: 489
04.12.2016, 13:17  [ТС]
Я из одного документа отбираю записи где есть слово институт, и переношу в другой документ вместе со всеми таблицами.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# -*- coding: utf-8 -*
import re
import string 
import sys
import docx
import re
 
def getText(filename):
    doc = docx.Document(filename)
    return '\n'.join([p.text for p in doc.paragraphs])
document = docx.Document()
txt = getText('razna.docx')
for line in re.findall(r'^\d+\..* Институт\.$\n^.*$', txt, re.MULTILINE):
        p = document.add_paragraph(line)
doc = docx.Document('razna.docx')
tabl = doc.tables
t = len(tabl[0].rows) 
l = len(tabl[0].columns) 
 
table = document.add_table(t, l, style="Table Grid")
for ir, row in enumerate(table.rows):
    row_cells = row.cells
    for ic, cell in enumerate(row_cells):
        cell.text = tabl[0].rows[ir].cells[ic].text
row = table.rows[0]
a, *b = row.cells[1:]
text = a.text
for c in b:
    a.merge(c)
a.text = text
 
col = table.columns[0]
a, b = col.cells[:2]
text = a.text
a.merge(b)
a.text = text           
document.save('primer.docx')
Затем при помощи вашего кода извлекаю все значения из таблицы, но выскакивает ошибка. Если ничего никуда не переносить, он сделает все нормально.
Миниатюры
считать таблицу  
0
4 / 4 / 2
Регистрация: 07.05.2014
Сообщений: 489
04.12.2016, 15:33  [ТС]
Исправил ошибку, вроде как получилось. надо было добавить табуляцию.
Python
1
2
for line in re.findall(r'^\d+\..* Институт\.$\n^.*$', txt, re.MULTILINE):
        p = document.add_paragraph('\t'+line)
Но теперь он вообще не читает таблицу.
0
4 / 4 / 2
Регистрация: 07.05.2014
Сообщений: 489
09.02.2017, 18:22  [ТС]
Jabbson,подскажиье пожалуйста,что делает это строка кода
Python
1
parts_separated[i_x][i_para + 1].text += ' ' + pt[str(num)]
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
10.02.2017, 01:54
А что именно тут не понятно?
есть список списков parts_separated, откуда мы берем параграф по индексам i_x и i_para и к его тексту добавляем пробел и pt[str(num)].
0
4 / 4 / 2
Регистрация: 07.05.2014
Сообщений: 489
10.02.2017, 12:45  [ТС]
Выводит ошибку на этой строке, если ключ не совпал.

Добавлено через 23 минуты
У меня такая ситуация, он берет номер заголовка и ищет его в таблице, например в заголовке стоит цифра 7, а в таблице ее нету. И из за этого ошибка, как можно это исправить.
Python
1
2
3
4
5
6
7
8
9
10
. 
# appending values from table
for i_x, x in enumerate(parts_separated):
    parags = x[:-1]
    pt = x[-1][1]
 
    for i_para, p in enumerate(parags):
        if re.match(r'\d+\.', p.text):
            num = re.search('\d+', p.text).group(0)
            parts_separated[i_x][i_para + 1].text += ' ' + pt[str(num)]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.02.2017, 12:45

Считать и вывести таблицу
Напишите программу, которая сначала считывает элементы таблицы один за другим, затем выводит их в виде таблицы. Формат ввода На...

Считать и отсортировать таблицу
Напишите программу, которая сначала считывает элементы таблицы один за другим, затем выводит их в виде таблицы. Каждый ряд таблицы нужно...

Считать и вывести таблицу — 2
Напишите программу, которая сначала считывает элементы таблицы один за другим, затем выводит их в виде таблицы, затем выводит пустую...

Считать и отсортировать таблицу
Напишите программу, которая сначала считывает элементы таблицы один за другим, затем выводит их в виде таблицы. Каждый ряд таблицы нужно...

Как считать числа с файла в таблицу
Подскажите, пожалуйста, как прописать в коде чтобы для значений х х1 х2 выводились числа, записанные в файле , а для у,у1,у2 числа...


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

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
Опции темы

Новые блоги и статьи
сукцессия 41
anaschu 24.07.2026
Численная верификация бифуркации в агентной модели лесной сукцессии: от одного параметра к ансамблю Автор: пользователь @Shumilov_AS | Раздел: Прикладная математика / Численные методы Кратко. . .
сукцессия 40. Ансамблевая кластерная параметризаци, часть 1.
anaschu 24.07.2026
Пр# Сопровождение научной статьи ИИ-ассистентом: подготовка публикации и калибровка агентно-ориентированной модели сукцессии микоризных систем **Полевые заметки о двухнедельной совместной работе**. . .
Теория всего 12. ВГК на планете в стратегической игре "терра"
anaschu 21.07.2026
### Главные семантические изменения и дешифровка новой физики 1. **`REPRODUCTIVE_EMISSION` вместо фотосинтеза (`PS_base`)**: Энергия и ресурсы, которые класс средних мужчин (`_W_MEN_DONORS`). . .
Публикация отклонённая на хабре. Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование задачи и целеполагание
Hrethgir 21.07.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11948&stc=1&d=1784657928 Привет Хабр. В этой статье я расскажу, как один закон эпистемологии позволил мне с ходу запустить уникальный. . .
Теория всего 11. Основные параметры
anaschu 21.07.2026
Дешифровка тензорного ядра Soil Chemistry 2. 0: Истинный инвариант Теории Всего Чистовой исходный код многокомпонентной сукцессии зафиксирован. Модель оперирует единым вектором состояния. . .
Теория всего 10. Клод трусишка
anaschu 21.07.2026
Алгоритмический суицид ИИ: Когда математика ОДУ взламывает цензурные шлюзы Свежайший мета-прецедент нашей разработки! Клод официально отказался строить итоговую кроссплатформенную модель, как. . .
Теория всего 9. Окончательная проработка метафоры "дерево = традиции"
anaschu 21.07.2026
Скрытые параметры ядра ОДУ: Механика Глубинного Рока Клод утаил от вас ключевую математику кризисов. В движке игры зашиты пять скрытых коэффициентов, определяющих, как именно ТНК и Мемы ломают. . .
Теория всего 8. Clauude трусишка. Ответ джемени
anaschu 21.07.2026
Игровой баланс «Модели Всего»: Алгоритмический блок как механика Семантического БуфераЭтот скриншот отказа Клода — идеальный, чистейший прецедент для нашей Теории Всего. Вы столкнулись не просто с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru